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:
-rw-r--r--.gitlab-ci.yml36
-rw-r--r--.ruby-version2
-rw-r--r--CHANGELOG.md120
-rw-r--r--Dockerfile2
-rw-r--r--README.md2
-rw-r--r--VERSION2
-rw-r--r--_support/instrumented-cluster/docker-compose.yml2
-rwxr-xr-x_support/publish34
-rwxr-xr-x_support/release21
-rw-r--r--changelogs/unreleased/datastore-pattern-for-replication-jobs.yml5
-rw-r--r--changelogs/unreleased/gitlab-shell-delete-ssh.yml5
-rw-r--r--changelogs/unreleased/id-add-option-avoid-loading-wiki-page-content.yml5
-rw-r--r--changelogs/unreleased/jc-pack-refs.yml5
-rw-r--r--changelogs/unreleased/jc-remove-find-all-tags-ruby.yml5
-rw-r--r--changelogs/unreleased/jc-remove-path-field.yml5
-rw-r--r--changelogs/unreleased/jc-use-perl-regexp.yml5
-rw-r--r--changelogs/unreleased/list-git-remotes.yml5
-rw-r--r--changelogs/unreleased/po-fix-datastore-update.yml5
-rw-r--r--changelogs/unreleased/sh-upgrade-ruby-2-6.yml5
-rw-r--r--changelogs/unreleased/zj-stop-symlinking-hooks.yml6
-rw-r--r--cmd/praefect/main.go2
-rw-r--r--doc/PROCESS.md8
-rw-r--r--doc/README.md4
-rw-r--r--doc/configuration/README.md1
-rw-r--r--doc/delta_islands.md55
-rw-r--r--doc/design_ha.md18
-rw-r--r--internal/command/command.go114
-rw-r--r--internal/command/command_test.go59
-rwxr-xr-xinternal/command/testdata/stderr_binary_null.sh4
-rwxr-xr-xinternal/command/testdata/stderr_many_lines.sh4
-rwxr-xr-xinternal/command/testdata/stderr_repeat_a.sh6
-rwxr-xr-xinternal/command/testdata/stderr_script.sh7
-rw-r--r--internal/config/config.go9
-rw-r--r--internal/config/sentry.go4
-rw-r--r--internal/git/catfile/batch.go35
-rw-r--r--internal/git/catfile/batch_cache.go185
-rw-r--r--internal/git/catfile/batch_cache_test.go178
-rw-r--r--internal/git/catfile/batchcheck.go1
-rw-r--r--internal/git/catfile/catfile.go126
-rw-r--r--internal/git/log/tag.go55
-rw-r--r--internal/git/objectpool/fetch.go68
-rw-r--r--internal/git/objectpool/pool.go19
-rw-r--r--internal/git/proto.go83
-rw-r--r--internal/git/proto_test.go92
-rw-r--r--internal/helper/security.go6
-rw-r--r--internal/logsanitizer/url.go2
-rw-r--r--internal/logsanitizer/url_test.go10
-rw-r--r--internal/metadata/featureflag/grpc_header.go (renamed from internal/featureflag/grpc_header.go)0
-rw-r--r--internal/metadata/featureflag/grpc_header_test.go (renamed from internal/featureflag/grpc_header_test.go)0
-rw-r--r--internal/metadata/metadata.go18
-rw-r--r--internal/praefect/coordinator.go17
-rw-r--r--internal/praefect/datastore.go275
-rw-r--r--internal/praefect/datastore_memory_test.go127
-rw-r--r--internal/praefect/datastore_test.go36
-rw-r--r--internal/praefect/mock/mock.proto4
-rw-r--r--internal/praefect/protoregistry/protoregistry.go146
-rw-r--r--internal/praefect/protoregistry/protoregistry_test.go195
-rw-r--r--internal/praefect/replicator.go40
-rw-r--r--internal/praefect/replicator_test.go17
-rw-r--r--internal/praefect/server_test.go2
-rw-r--r--internal/rubyserver/rubyserver.go4
-rw-r--r--internal/service/cleanup/apply_bfg_object_map.go2
-rw-r--r--internal/service/cleanup/apply_bfg_object_map_stream.go108
-rw-r--r--internal/service/cleanup/apply_bfg_object_map_stream_test.go133
-rw-r--r--internal/service/cleanup/apply_bfg_object_map_test.go2
-rw-r--r--internal/service/cleanup/internalrefs/cleaner.go27
-rw-r--r--internal/service/cleanup/notifier/notifier.go64
-rw-r--r--internal/service/cleanup/server.go7
-rw-r--r--internal/service/commit/find_commit.go6
-rw-r--r--internal/service/commit/find_commit_test.go104
-rw-r--r--internal/service/commit/find_commits.go1
-rw-r--r--internal/service/commit/list_last_commits_for_tree.go11
-rw-r--r--internal/service/commit/list_last_commits_for_tree_test.go62
-rw-r--r--internal/service/commit/testhelper_test.go4
-rw-r--r--internal/service/objectpool/alternates.go241
-rw-r--r--internal/service/objectpool/alternates_test.go148
-rw-r--r--internal/service/objectpool/fetch_into_object_pool.go47
-rw-r--r--internal/service/objectpool/fetch_into_object_pool_test.go122
-rw-r--r--internal/service/objectpool/link.go6
-rw-r--r--internal/service/objectpool/link_test.go35
-rw-r--r--internal/service/operations/merge_test.go25
-rw-r--r--internal/service/operations/rebase.go117
-rw-r--r--internal/service/operations/rebase_test.go364
-rw-r--r--internal/service/operations/squash_test.go83
-rw-r--r--internal/service/operations/submodules_test.go4
-rw-r--r--internal/service/ref/pack_refs.go3
-rw-r--r--internal/service/ref/refs_test.go115
-rw-r--r--internal/service/repository/cleanup.go31
-rw-r--r--internal/service/repository/cleanup_test.go71
-rw-r--r--internal/service/repository/create_from_snapshot_test.go4
-rw-r--r--internal/service/repository/create_test.go11
-rw-r--r--internal/service/repository/fetch_remote.go11
-rw-r--r--internal/service/repository/fetch_remote_test.go140
-rw-r--r--internal/service/repository/gc.go55
-rw-r--r--internal/service/repository/gc_test.go38
-rw-r--r--internal/service/repository/repack.go5
-rw-r--r--internal/service/repository/repack_test.go2
-rw-r--r--internal/service/repository/search_files.go2
-rw-r--r--internal/service/repository/search_files_test.go6
-rw-r--r--internal/service/repository/testdata/advertise.txt4
-rw-r--r--internal/service/wiki/get_all_pages_test.go24
-rw-r--r--internal/testhelper/config.go64
-rw-r--r--internal/testhelper/config_test.go41
-rw-r--r--internal/testhelper/stream.go29
-rw-r--r--internal/testhelper/test_hook.go6
-rw-r--r--internal/testhelper/testhelper.go26
-rw-r--r--ruby/.rubocop.yml4
-rw-r--r--ruby/Gemfile12
-rw-r--r--ruby/Gemfile.lock36
-rw-r--r--ruby/lib/gitaly_server/operations_service.rb34
-rw-r--r--ruby/lib/gitaly_server/remote_service.rb20
-rw-r--r--ruby/lib/gitaly_server/repository_service.rb42
-rw-r--r--ruby/lib/gitaly_server/sentry.rb1
-rw-r--r--ruby/lib/gitaly_server/utils.rb18
-rw-r--r--ruby/lib/gitlab/git.rb2
-rw-r--r--ruby/lib/gitlab/git/gitaly_remote_repository.rb2
-rw-r--r--ruby/lib/gitlab/git/gitlab_projects.rb9
-rw-r--r--ruby/lib/gitlab/git/http_auth.rb33
-rw-r--r--ruby/lib/gitlab/git/operation_service.rb13
-rw-r--r--ruby/lib/gitlab/git/repository.rb44
-rw-r--r--ruby/spec/lib/gitaly_server/exception_sanitizer_interceptor_spec.rb9
-rw-r--r--ruby/spec/lib/gitlab/git/repository_spec.rb47
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/blob.pb.go115
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/cleanup.pb.go374
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/commit.pb.go360
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/conflicts.pb.go100
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/diff.pb.go150
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/namespace.pb.go67
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/notifications.pb.go189
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/objectpool.pb.go309
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/operations.pb.go858
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/protolist.go24
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/ref.pb.go301
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/remote.pb.go124
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/repository-service.pb.go551
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/server.pb.go52
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/shared.pb.go167
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/smarthttp.pb.go79
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/ssh.pb.go82
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/storage.pb.go53
-rw-r--r--vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/wiki.pb.go195
-rw-r--r--vendor/vendor.json10
142 files changed, 6926 insertions, 2284 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 1eb964812..14e2ad34f 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,4 +1,4 @@
-image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.5-golang-1.11-git-2.18
+image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.6-golang-1.11-git-2.21
stages:
- build
@@ -7,7 +7,7 @@ stages:
variables:
DOCKER_DRIVER: overlay2
- CUSTOM_IMAGE_VERSION: ruby-2.5-golang-1.11-git-2.18
+ CUSTOM_IMAGE_VERSION: ruby-2.6-golang-1.11-git-2.18
danger-review:
image: registry.gitlab.com/gitlab-org/gitlab-build-images:danger
@@ -23,7 +23,7 @@ danger-review:
.ruby_template: &ruby_definition
cache:
- key: gems-ruby-2.5
+ key: gems-ruby-2.6
paths:
- ruby/vendor/bundle
@@ -56,7 +56,7 @@ danger-review:
stage: test
# Override the ruby_definition cache definition for pull
cache:
- key: gems-ruby-2.5
+ key: gems-ruby-2.6
paths:
- ruby/vendor/bundle
policy: pull
@@ -82,35 +82,38 @@ verify:
build:go1.12:
<<: *build_definition
- image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.5-golang-1.12-git-2.18
+ image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.6-golang-1.12-git-2.21
build:go1.11:
<<: *build_definition
- image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.5-golang-1.11-git-2.18
+ image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.6-golang-1.11-git-2.21
binaries_go1.12:
<<: *assemble_definition
- image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.5-golang-1.12-git-2.18
+ image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.6-golang-1.12-git-2.21
binaries_go1.11:
<<: *assemble_definition
- image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.5-golang-1.11-git-2.18
+ image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.6-golang-1.11-git-2.21
-test:go1.12-git-2.21-ruby-2.5:
- image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.5-golang-1.12-git-2.21
+test:go1.12-git-2.21-ruby-2.6:
+ image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.6-golang-1.12-git-2.21
<<: *test_definition
-test:go1.12-git-2.18-ruby-2.5:
- image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.5-golang-1.12-git-2.18
+test:go1.11-git-2.21-ruby-2.6:
+ image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.6-golang-1.11-git-2.21
<<: *test_definition
-test:go1.11-git-2.18-ruby-2.5:
- image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.5-golang-1.11-git-2.18
+test:go1.12-git-2.21-ruby-2.5:
+ image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.5-golang-1.12-git-2.21
+ <<: *test_definition
+
+test:go1.11-git-2.21-ruby-2.5:
+ image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.5-golang-1.11-git-2.21
<<: *test_definition
test:proxy:
<<: *test_definition
- image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.5-golang-1.11-git-2.18
script:
- make test-with-proxies
@@ -180,6 +183,3 @@ update-downstream-server-version:
script:
- ruby _support/update-downstream-server-version
allow_failure: true
-
-include:
- template: License-Management.gitlab-ci.yml
diff --git a/.ruby-version b/.ruby-version
index aedc15bb0..ec1cf33c3 100644
--- a/.ruby-version
+++ b/.ruby-version
@@ -1 +1 @@
-2.5.3
+2.6.3
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 0a3f6cc69..537b9e30d 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,125 @@
# Gitaly changelog
+## v1.42.0
+
+#### Other
+- Use simpler data structure for cat-file cache
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1233
+
+## v1.41.0
+
+#### Added
+- Implement the ApplyBfgObjectMapStream RPC
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1199
+
+## v1.40.0
+
+#### Fixed
+- Do not close the TTL channel twice
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1235
+
+## v1.39.0
+
+#### Added
+- Add option to add Sentry environment
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1216
+ Contributed by Roger Meier
+
+#### Fixed
+- Fix CacheItem pointer in cache
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1234
+
+## v1.38.0
+
+#### Added
+- Add cache for batch files
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1203
+
+#### Other
+- Upgrade Rubocop to 0.68.1
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1229
+
+## v1.37.0
+
+#### Added
+- Add DisconnectGitAlternates RPC
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1141
+
+## v1.36.0
+
+#### Added
+- adding ProtoRegistry
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1188
+- Adding FetchIntoObjectPool RPC
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1172
+- Add new two-step UserRebaseConfirmable RPC
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1208
+
+#### Fixed
+- Include stderr in err returned by git.Command Wait()
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1167
+- Use 3-way merge for squashing commits
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1214
+- Close logrus writer when command finishes
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1225
+
+#### Other
+- Bump Ruby bundler version to 1.17.3
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1215
+- Upgrade Ruby gRPC 1.19.0 and protobuf to 3.7.1
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1066
+- Ensure pool exists in LinkRepositoryToObjectPool rpc
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1222
+- Update FetchRemote ruby to write http auth as well as add remote
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1126
+
+#### Performance
+- GarbageCollect RPC writes commit graph and enables via config
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1218
+
+#### Security
+- Bump Nokogiri to 1.10.3
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1217
+- Loosen regex for exception sanitization
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/25
+
+## v1.35.1
+
+The v1.35.1 tag points to a release that was made on the wrong branch, please
+ignore.
+
+## v1.35.0
+
+#### Added
+- Return path data in ListLastCommitsForTree
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1168
+
+## v1.34.0
+
+#### Added
+- Add PackRefs RPC
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1161
+- Implement ListRemotes
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1019
+- Test and require Git 2.21
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1205
+- Add WikiListPages RPC call
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1194
+
+#### Fixed
+- Cleanup RPC prunes disconnected work trees
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1189
+- Fix FindAllTags to dereference tags that point to other tags
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1193
+
+#### Other
+- Datastore pattern for replication jobs
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1147
+- Remove find all tags ruby
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1163
+- Delete SSH frontend code from ruby/gitlab-shell
+ https://gitlab.com/gitlab-org/gitaly/merge_requests/1179
+
## v1.33.0
#### Added
diff --git a/Dockerfile b/Dockerfile
index 11959e0ca..56ac98b8d 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -6,7 +6,7 @@
# See the _support/load-cluster/docker-compose.yml for an example of how to use
# this image
#
-FROM registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.5-golang-1.11-git-2.18
+FROM registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.6-golang-1.11-git-2.18
RUN mkdir -p /app/ruby
diff --git a/README.md b/README.md
index dd4d9b8a0..496662f9b 100644
--- a/README.md
+++ b/README.md
@@ -59,7 +59,7 @@ Gitaly requires Go 1.11 or newer and Ruby 2.5. Run `make` to download
and compile Ruby dependencies, and to compile the Gitaly Go
executable.
-Gitaly uses `git`. Version `2.18.0` or higher is required.
+Gitaly uses `git`. Version `2.21.0` or higher is required.
## Configuration
diff --git a/VERSION b/VERSION
index 7aa332e41..a50908ca3 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.33.0
+1.42.0
diff --git a/_support/instrumented-cluster/docker-compose.yml b/_support/instrumented-cluster/docker-compose.yml
index fda8e3ece..1478bf7a5 100644
--- a/_support/instrumented-cluster/docker-compose.yml
+++ b/_support/instrumented-cluster/docker-compose.yml
@@ -2,7 +2,7 @@ version: "2.4"
services:
gitaly1repos:
- image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.5-golang-1.11-git-2.18
+ image: registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.6-golang-1.11-git-2.18
volumes:
- gitalydata1:/repositories
- ./gitaly1repos/setup.sh:/setup.sh
diff --git a/_support/publish b/_support/publish
new file mode 100755
index 000000000..76ca456f7
--- /dev/null
+++ b/_support/publish
@@ -0,0 +1,34 @@
+#!/usr/bin/env ruby
+
+require_relative 'run.rb'
+
+REMOTE_REGEX = %r{gitlab.com.gitlab-org/gitaly.git}
+
+# Sanity check
+%w[
+ git@gitlab.com:gitlab-org/gitaly.git
+ https://gitlab.com/gitlab-org/gitaly.git
+ https://janedoe@gitlab.com/gitlab-org/gitaly.git
+].each do |remote|
+ abort "regex check failed failed for #{remote.inspect}" unless REMOTE_REGEX.match(remote)
+end
+
+def main(tag)
+ remote = capture!(%w[git remote get-url --push origin])
+ unless REMOTE_REGEX.match(remote)
+ abort "Git remote 'origin' must match #{REMOTE_REGEX}, got #{remote.inspect}"
+ end
+
+ puts "Proceed to publish version #{tag}? Enter 'Yes' to continue; Ctrl-C to abort"
+ $stdout.flush
+ abort unless $stdin.gets.chomp == 'Yes'
+
+ run!(%W[git push origin HEAD #{tag}])
+end
+
+unless ARGV.count == 1
+ warn "Usage: #{$0} TAG"
+ abort
+end
+
+main(ARGV[0])
diff --git a/_support/release b/_support/release
index 2ff2061e0..443f013e8 100755
--- a/_support/release
+++ b/_support/release
@@ -3,23 +3,8 @@ require 'erb'
require_relative 'run.rb'
-REMOTE_REGEX = %r{gitlab.com.gitlab-org/gitaly.git}
-
-# Sanity check
-%w[
- git@gitlab.com:gitlab-org/gitaly.git
- https://gitlab.com/gitlab-org/gitaly.git
- https://janedoe@gitlab.com/gitlab-org/gitaly.git
-].each do |remote|
- abort "regex check failed failed for #{remote.inspect}" unless REMOTE_REGEX.match(remote)
-end
def main(version)
- remote = capture!(%w[git remote get-url --push origin])
- unless REMOTE_REGEX.match(remote)
- abort "Git remote 'origin' must match #{REMOTE_REGEX}, got #{remote.inspect}"
- end
-
unless version =~ /^[0-9]/
abort "Version string #{version.inspect} does not look like a semver (e.g. \"1.0.2\"). Aborting."
end
@@ -47,11 +32,7 @@ def main(version)
show_output = capture!(%W[git show --pretty #{tag_name}])
puts show_output
- puts "Proceed to publish version #{version}? Enter 'Yes' to continue; Ctrl-C to abort"
- $stdout.flush
- abort unless $stdin.gets.chomp == 'Yes'
-
- run!(%W[git push origin HEAD #{tag_name}])
+ puts "If this is not a security release you can now publish this tag to gitlab.com:\n\n\t_support/publish #{tag_name}\n\n"
end
def write_version_file(version)
diff --git a/changelogs/unreleased/datastore-pattern-for-replication-jobs.yml b/changelogs/unreleased/datastore-pattern-for-replication-jobs.yml
deleted file mode 100644
index f81236920..000000000
--- a/changelogs/unreleased/datastore-pattern-for-replication-jobs.yml
+++ /dev/null
@@ -1,5 +0,0 @@
----
-title: Datastore pattern for replication jobs
-merge_request: 1147
-author:
-type: other
diff --git a/changelogs/unreleased/gitlab-shell-delete-ssh.yml b/changelogs/unreleased/gitlab-shell-delete-ssh.yml
deleted file mode 100644
index df9e071b7..000000000
--- a/changelogs/unreleased/gitlab-shell-delete-ssh.yml
+++ /dev/null
@@ -1,5 +0,0 @@
----
-title: Delete SSH frontend code from ruby/gitlab-shell
-merge_request: 1179
-author:
-type: other
diff --git a/changelogs/unreleased/id-add-option-avoid-loading-wiki-page-content.yml b/changelogs/unreleased/id-add-option-avoid-loading-wiki-page-content.yml
deleted file mode 100644
index b1797a3aa..000000000
--- a/changelogs/unreleased/id-add-option-avoid-loading-wiki-page-content.yml
+++ /dev/null
@@ -1,5 +0,0 @@
----
-title: Add WikiListPages RPC call
-merge_request: 1194
-author:
-type: added
diff --git a/changelogs/unreleased/jc-pack-refs.yml b/changelogs/unreleased/jc-pack-refs.yml
deleted file mode 100644
index f11f486ef..000000000
--- a/changelogs/unreleased/jc-pack-refs.yml
+++ /dev/null
@@ -1,5 +0,0 @@
----
-title: Add PackRefs RPC
-merge_request: 1161
-author:
-type: added
diff --git a/changelogs/unreleased/jc-remove-find-all-tags-ruby.yml b/changelogs/unreleased/jc-remove-find-all-tags-ruby.yml
deleted file mode 100644
index bba7747b3..000000000
--- a/changelogs/unreleased/jc-remove-find-all-tags-ruby.yml
+++ /dev/null
@@ -1,5 +0,0 @@
----
-title: Remove find all tags ruby
-merge_request: 1163
-author:
-type: other
diff --git a/changelogs/unreleased/jc-remove-path-field.yml b/changelogs/unreleased/jc-remove-path-field.yml
new file mode 100644
index 000000000..c9e89a0a9
--- /dev/null
+++ b/changelogs/unreleased/jc-remove-path-field.yml
@@ -0,0 +1,5 @@
+---
+title: Remove path field in ListLastCommitsForTree response
+merge_request: 1240
+author:
+type: fixed
diff --git a/changelogs/unreleased/jc-use-perl-regexp.yml b/changelogs/unreleased/jc-use-perl-regexp.yml
new file mode 100644
index 000000000..141217302
--- /dev/null
+++ b/changelogs/unreleased/jc-use-perl-regexp.yml
@@ -0,0 +1,5 @@
+---
+title: Use --perl-regexp for code search
+merge_request: 1241
+author:
+type: performance
diff --git a/changelogs/unreleased/list-git-remotes.yml b/changelogs/unreleased/list-git-remotes.yml
deleted file mode 100644
index 60d5c9d2a..000000000
--- a/changelogs/unreleased/list-git-remotes.yml
+++ /dev/null
@@ -1,5 +0,0 @@
----
-title: Implement ListRemotes
-merge_request: 1019
-author:
-type: added
diff --git a/changelogs/unreleased/po-fix-datastore-update.yml b/changelogs/unreleased/po-fix-datastore-update.yml
new file mode 100644
index 000000000..871b77ebf
--- /dev/null
+++ b/changelogs/unreleased/po-fix-datastore-update.yml
@@ -0,0 +1,5 @@
+---
+title: Fix replication job state changing
+merge_request: 1236
+author:
+type: fixed
diff --git a/changelogs/unreleased/sh-upgrade-ruby-2-6.yml b/changelogs/unreleased/sh-upgrade-ruby-2-6.yml
new file mode 100644
index 000000000..0a926ad65
--- /dev/null
+++ b/changelogs/unreleased/sh-upgrade-ruby-2-6.yml
@@ -0,0 +1,5 @@
+---
+title: Upgrade to Ruby 2.6
+merge_request: 1228
+author:
+type: performance
diff --git a/changelogs/unreleased/zj-stop-symlinking-hooks.yml b/changelogs/unreleased/zj-stop-symlinking-hooks.yml
new file mode 100644
index 000000000..b366b813e
--- /dev/null
+++ b/changelogs/unreleased/zj-stop-symlinking-hooks.yml
@@ -0,0 +1,6 @@
+---
+title: Stop symlinking hooks on repository creation
+merge_request: 1052
+author:
+type: added
+
diff --git a/cmd/praefect/main.go b/cmd/praefect/main.go
index 941486861..75d47308c 100644
--- a/cmd/praefect/main.go
+++ b/cmd/praefect/main.go
@@ -78,7 +78,7 @@ func run(listeners []net.Listener, conf config.Config) error {
var (
// top level server dependencies
coordinator = praefect.NewCoordinator(logger, conf.PrimaryServer.Name)
- datastore = praefect.NewMemoryDatastore(conf, time.Now())
+ datastore = praefect.NewMemoryDatastore(conf)
repl = praefect.NewReplMgr("default", logger, datastore, coordinator, praefect.WithWhitelist(conf.Whitelist))
srv = praefect.NewServer(coordinator, repl, nil, logger)
diff --git a/doc/PROCESS.md b/doc/PROCESS.md
index b68bc7a68..54c5a5f12 100644
--- a/doc/PROCESS.md
+++ b/doc/PROCESS.md
@@ -34,6 +34,14 @@ GITLAB_TOKEN=$(cat /path/to/gitlab-token) _support/update-downstream-server-vers
- This will create a merge-request (with changelog) and assign it to you. Once the build has
completed successfully, assign it to a maintainer for review.
+##### Security release
+
+- Check what version of Gitaly you're backporting by opening [`GITALY_SERVER_VERSION`](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/GITALY_SERVER_VERSION)
+- Create a stable branch for this version:
+ - `git checkout vX.Y.Z`, then `git checkout -b X-Y-stable`, and push it to the main gitlab.com repository
+- Create the required merge requests on `dev.gitlab.org`, making sure to bump `GITALY_SERVER_VERSION` on the client (gitlab-rails) in every backported merge request
+- Follow the [usual security process](https://gitlab.com/gitlab-org/release/docs/blob/master/general/security/developer.md)
+
## Experimental builds
Push the release tag to dev.gitlab.org/gitlab/gitaly. After the
diff --git a/doc/README.md b/doc/README.md
index 65217c61c..a3a2b29af 100644
--- a/doc/README.md
+++ b/doc/README.md
@@ -23,3 +23,7 @@ means that Gitaly is not highly available. How this will be solved is described
[in the HA design document](doc/design_ha.md)
For configuration please read [praefects configuration documentation](doc/configuration/praefect.md).
+
+#### Technical explanations
+
+- [Delta Islands](doc/delta_islands.md)
diff --git a/doc/configuration/README.md b/doc/configuration/README.md
index 652745eb4..644e400e9 100644
--- a/doc/configuration/README.md
+++ b/doc/configuration/README.md
@@ -145,6 +145,7 @@ level = "warn"
|format|string|no|Log format: "text" or "json". Default: "text"|
|level|string|no| Log level: "debug", "info", "warn", "error", "fatal", or "panic". Default: "info"|
|sentry_dsn|string|no|Sentry DSN for exception monitoring|
+|sentry_environment|string|no|Sentry Environment for exception monitoring|
|ruby_sentry_dsn|string|no|Sentry DSN for gitaly-ruby exception monitoring|
## Environment variables
diff --git a/doc/delta_islands.md b/doc/delta_islands.md
new file mode 100644
index 000000000..4182f1140
--- /dev/null
+++ b/doc/delta_islands.md
@@ -0,0 +1,55 @@
+## Delta Islands
+
+Most of the time, an object in a Git repository is stored as a delta against
+another object. This means that if a blob is stored once, and only one line is
+changed, the storage requirements for the repository does not come close to the
+two individual blobs. This helps Git also, when a client is requesting data during
+a fetch. The transmitted bytes again, is much less than the combined size of all
+the objects.
+
+Now when a third blob of the same file is created, it too has its delta
+calculated against the second blob, only stored as delta, to itself. These three
+blobs now form a delta chain. Git stores these delta chains in [pack files][git-pack],
+and when a `repack` is executed these chains might be recalculated if one of the
+blobs isn't required anymore, or if a better delta base is discovered.
+
+In the case of a git fetch, it might happen that the client doesn't have a set
+of branches that, during repack, were detected to share many of the same contents
+and thus form a delta chain. Git can then decide to send the full delta chain.
+
+In practice, these delta chains jump between branches, tags, and other refs. When
+a client initiates a fetch, it's usually not interested in any of the other
+refs. Further more it might create a security issue when objects are shared
+between between repositories. This will invalidate the delta chain on disk, and
+Git will, and during the fetch request, Git will recalculate the diffs for the
+objects later in the chain it does want.
+
+Delta islands try to solve this by creating islands of objects which the delta
+detection algorithm can use to create a delta against. For example, all branches
+could be a namespace, or island. When a client fetches, the likelihood of the
+chain being valid is much greater. This prevents Git from reconstructing the
+full objects, which improves the load on the server and latency for the fetch.
+
+The drawback of this feature is that the packs on disk are potentially
+larger as it's not always the case the optimal object can be used as delta base.
+
+### In GitLab
+
+Delta Island relies on Git version 2.20 or later, which GitLab is expected to
+use from version 11.11 onwards. The change on the Gitaly side is limited to
+setting a config option [when repacking][delta-config]. This option is set at
+runtime to prevent having to write the configuration file for all repositories.
+
+User impact of this feature includes faster fetches, as Git on the server does
+less work and reuses previous work better.
+
+#### Further reading
+
+As usually the case, the [tests of Git][git-delta-test] provide a good overview
+of how the feature works.
+
+[git-delta-test]: https://github.com/git/git/blob/041f5ea1cf987a4068ef5f39ba0a09be85952064/t/t5320-delta-islands.sh
+[git-pack]: https://git-scm.com/docs/git-pack-objects
+[delta-mr]: https://gitlab.com/gitlab-org/gitaly/merge_requests/1110
+[delta-config]: https://gitlab.com/gitlab-org/gitaly/merge_requests/1110/diffs#e01aecd9d7ee43aee1959795092f852d07a1e7ed_55_78
+
diff --git a/doc/design_ha.md b/doc/design_ha.md
index e446dc85e..fb3cf523d 100644
--- a/doc/design_ha.md
+++ b/doc/design_ha.md
@@ -1,7 +1,7 @@
# Gitaly High Availability (HA) Design
Gitaly HA is an active-active cluster configuration for resilient git operations. [Refer to our specific requirements](https://gitlab.com/gitlab-org/gitaly/issues/1332).
-Refer to [epic &289][epic] for current issues and discussions revolving around
+Refer to [epic &289][epic] for current issues and discussions revolving around
HA MVC development.
## Terminology
@@ -93,6 +93,22 @@ sequenceDiagram
*Note: Once Node-A propagates changes to a peer, Node-A is no longer the critical path for subsequent propagations. If Node-A fails after a second peer is propagated, that second peer can become the new leader and resume replications.*
+##### Replication Logic
+
+Here are the steps during a Gitaly client GRPC call intercepted by Praefect:
+
+```mermaid
+graph TD
+ A[Gitaly Client]-->B{Does RPC Mutate a repository?}
+ B-->| yes | C[Peek into RPC Stream to determine Repository]
+ B-->| no | G[Forward request to Gitaly]
+ C-->D{Scoped for repository?}
+ D-->| yes | E[Get target repository from message]
+ D-->| no | G
+ E-->F[Schedule Replication]
+ F-->G
+```
+
## Stages until v1.0
Rome wasn't built in a day, nor will Praefect be build in one. To iterate towards
diff --git a/internal/command/command.go b/internal/command/command.go
index 9272de8bf..5f72fec60 100644
--- a/internal/command/command.go
+++ b/internal/command/command.go
@@ -1,6 +1,7 @@
package command
import (
+ "bufio"
"context"
"errors"
"fmt"
@@ -14,10 +15,15 @@ import (
"time"
grpc_logrus "github.com/grpc-ecosystem/go-grpc-middleware/logging/logrus"
+ "github.com/sirupsen/logrus"
log "github.com/sirupsen/logrus"
"gitlab.com/gitlab-org/gitaly/internal/config"
)
+const (
+ escapedNewline = `\n`
+)
+
// GitEnv contains the ENV variables for git commands
var GitEnv = []string{
// Force english locale for consistency on the output messages
@@ -49,13 +55,22 @@ var exportedEnvVars = []string{
"no_proxy",
}
+const (
+ // MaxStderrBytes is at most how many bytes will be written to stderr
+ MaxStderrBytes = 10000 // 10kb
+ // StderrBufferSize is the buffer size we use for the reader that reads from
+ // the stderr stream of the command
+ StderrBufferSize = 4096
+)
+
// Command encapsulates a running exec.Cmd. The embedded exec.Cmd is
// terminated and reaped automatically when the context.Context that
// created it is canceled.
type Command struct {
reader io.Reader
writer io.WriteCloser
- logrusWriter io.WriteCloser
+ stderrCloser io.WriteCloser
+ stderrDone chan struct{}
cmd *exec.Cmd
context context.Context
startTime time.Time
@@ -132,6 +147,18 @@ type spawnTimeoutError struct{ error }
type contextWithoutDonePanic string
type nullInArgvError struct{ error }
+// noopWriteCloser has a noop Close(). The reason for this is so we can close any WriteClosers that get
+// passed into writeLines. We need this for WriteClosers such as the Logrus writer, which has a
+// goroutine that is stopped by the runtime https://github.com/sirupsen/logrus/blob/master/writer.go#L51.
+// Unless we explicitly close it, go test will complain that logs are being written to after the Test exits.
+type noopWriteCloser struct {
+ io.Writer
+}
+
+func (n *noopWriteCloser) Close() error {
+ return nil
+}
+
// New creates a Command from an exec.Cmd. On success, the Command
// contains a running subprocess. When ctx is canceled the embedded
// process will be terminated and reaped automatically.
@@ -163,9 +190,10 @@ func New(ctx context.Context, cmd *exec.Cmd, stdin io.Reader, stdout, stderr io.
}()
command := &Command{
- cmd: cmd,
- startTime: time.Now(),
- context: ctx,
+ cmd: cmd,
+ startTime: time.Now(),
+ context: ctx,
+ stderrDone: make(chan struct{}),
}
// Explicitly set the environment for the command
@@ -204,13 +232,13 @@ func New(ctx context.Context, cmd *exec.Cmd, stdin io.Reader, stdout, stderr io.
}
if stderr != nil {
- cmd.Stderr = stderr
+ command.stderrCloser = escapeNewlineWriter(&noopWriteCloser{stderr}, command.stderrDone, MaxStderrBytes)
} else {
- // If we don't do something with cmd.Stderr, Git errors will be lost
- command.logrusWriter = grpc_logrus.Extract(ctx).WriterLevel(log.InfoLevel)
- cmd.Stderr = command.logrusWriter
+ command.stderrCloser = escapeNewlineWriter(grpc_logrus.Extract(ctx).WriterLevel(log.ErrorLevel), command.stderrDone, MaxStderrBytes)
}
+ cmd.Stderr = command.stderrCloser
+
if err := cmd.Start(); err != nil {
return nil, fmt.Errorf("GitCommand: start %v: %v", cmd.Args, err)
}
@@ -244,6 +272,71 @@ func exportEnvironment(env []string) []string {
return env
}
+func escapeNewlineWriter(outbound io.WriteCloser, done chan struct{}, maxBytes int) io.WriteCloser {
+ r, w := io.Pipe()
+
+ go writeLines(outbound, r, done, maxBytes)
+
+ return w
+}
+
+func writeLines(writer io.WriteCloser, reader io.Reader, done chan struct{}, maxBytes int) {
+ var bytesWritten int
+
+ bufReader := bufio.NewReaderSize(reader, StderrBufferSize)
+
+ var err error
+ var b []byte
+ var isPrefix, discardRestOfLine bool
+
+ for err == nil {
+ b, isPrefix, err = bufReader.ReadLine()
+
+ if discardRestOfLine {
+ ioutil.Discard.Write(b)
+ // if isPrefix = false, that means the reader has gotten to the end
+ // of the line. We want to read the first chunk of the next line
+ if !isPrefix {
+ discardRestOfLine = false
+ }
+ continue
+ }
+
+ // if we've reached the max, discard
+ if bytesWritten >= maxBytes {
+ ioutil.Discard.Write(b)
+ continue
+ }
+
+ // only write up to the max
+ if len(b)+bytesWritten+len(escapedNewline) >= maxBytes {
+ b = b[:maxBytes-bytesWritten-len(escapedNewline)]
+ }
+
+ // prepend an escaped newline
+ if bytesWritten > 0 {
+ b = append([]byte(escapedNewline), b...)
+ }
+
+ n, _ := writer.Write(b)
+ bytesWritten += n
+
+ // if isPrefix, it means the line is too long so we want to discard the rest
+ if isPrefix {
+ discardRestOfLine = true
+ }
+ }
+
+ // read the rest so the command doesn't get blocked
+ if err != io.EOF {
+ logrus.WithError(err).Error("error while reading from Writer")
+ io.Copy(ioutil.Discard, reader)
+ }
+
+ writer.Close()
+ done <- struct{}{}
+}
+
// This function should never be called directly, use Wait().
func (c *Command) wait() {
if c.writer != nil {
@@ -267,10 +360,11 @@ func (c *Command) wait() {
c.logProcessComplete(c.context, exitCode)
- if w := c.logrusWriter; w != nil {
- // Closing this writer lets a logrus goroutine finish early
+ if w := c.stderrCloser; w != nil {
w.Close()
}
+
+ <-c.stderrDone
}
// ExitStatus will return the exit-code from an error returned by Wait().
diff --git a/internal/command/command_test.go b/internal/command/command_test.go
index feaf52711..151a4a35f 100644
--- a/internal/command/command_test.go
+++ b/internal/command/command_test.go
@@ -11,6 +11,7 @@ import (
"testing"
"time"
+ "github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
@@ -187,3 +188,61 @@ func TestNewCommandNullInArg(t *testing.T) {
_, ok := err.(nullInArgvError)
require.True(t, ok, "expected %+v to be nullInArgvError", err)
}
+
+func TestCommandStdErr(t *testing.T) {
+ ctx, cancel := context.WithCancel(context.Background())
+ defer cancel()
+
+ var stdout, stderr bytes.Buffer
+
+ cmd, err := New(ctx, exec.Command("./testdata/stderr_script.sh"), nil, &stdout, &stderr)
+ require.NoError(t, err)
+
+ require.Error(t, cmd.Wait())
+ assert.Empty(t, stdout.Bytes())
+ assert.Equal(t, `hello world\nhello world\nhello world\nhello world\nhello world\n`, stderr.String())
+}
+
+func TestCommandStdErrLargeOutput(t *testing.T) {
+ ctx, cancel := context.WithCancel(context.Background())
+ defer cancel()
+
+ var stdout, stderr bytes.Buffer
+
+ cmd, err := New(ctx, exec.Command("./testdata/stderr_many_lines.sh"), nil, &stdout, &stderr)
+ require.NoError(t, err)
+
+ require.Error(t, cmd.Wait())
+ assert.Empty(t, stdout.Bytes())
+ assert.True(t, stderr.Len() <= MaxStderrBytes)
+}
+
+func TestCommandStdErrBinaryNullBytes(t *testing.T) {
+ ctx, cancel := context.WithCancel(context.Background())
+ defer cancel()
+
+ var stdout, stderr bytes.Buffer
+
+ cmd, err := New(ctx, exec.Command("./testdata/stderr_binary_null.sh"), nil, &stdout, &stderr)
+ require.NoError(t, err)
+
+ require.Error(t, cmd.Wait())
+ assert.Empty(t, stdout.Bytes())
+ assert.NotEmpty(t, stderr.Bytes())
+}
+
+func TestCommandStdErrLongLine(t *testing.T) {
+ ctx, cancel := context.WithCancel(context.Background())
+ defer cancel()
+
+ var stdout, stderr bytes.Buffer
+
+ cmd, err := New(ctx, exec.Command("./testdata/stderr_repeat_a.sh"), nil, &stdout, &stderr)
+ require.NoError(t, err)
+
+ require.Error(t, cmd.Wait())
+ assert.Empty(t, stdout.Bytes())
+ assert.NotEmpty(t, stderr.Bytes())
+ assert.Equal(t, fmt.Sprintf("%s\\n%s", strings.Repeat("a", StderrBufferSize), strings.Repeat("b", StderrBufferSize)), stderr.String())
+ // t.Logf(stderr.String())
+}
diff --git a/internal/command/testdata/stderr_binary_null.sh b/internal/command/testdata/stderr_binary_null.sh
new file mode 100755
index 000000000..8b7a7f6e7
--- /dev/null
+++ b/internal/command/testdata/stderr_binary_null.sh
@@ -0,0 +1,4 @@
+#!/bin/bash
+
+dd if=/dev/zero bs=1000 count=1000 >&2;
+exit 1; \ No newline at end of file
diff --git a/internal/command/testdata/stderr_many_lines.sh b/internal/command/testdata/stderr_many_lines.sh
new file mode 100755
index 000000000..7a346328f
--- /dev/null
+++ b/internal/command/testdata/stderr_many_lines.sh
@@ -0,0 +1,4 @@
+#!/bin/bash
+
+let x=0; while [ $x -lt 100010 ]; do let x=x+1; printf '%06d zzzzzzzzzz\n' $x >&2 ; done
+exit 1; \ No newline at end of file
diff --git a/internal/command/testdata/stderr_repeat_a.sh b/internal/command/testdata/stderr_repeat_a.sh
new file mode 100755
index 000000000..0c967e730
--- /dev/null
+++ b/internal/command/testdata/stderr_repeat_a.sh
@@ -0,0 +1,6 @@
+#!/bin/bash
+
+printf 'a%.0s' {1..8192} >&2
+printf '\n' >&2
+printf 'b%.0s' {1..8192} >&2
+exit 1; \ No newline at end of file
diff --git a/internal/command/testdata/stderr_script.sh b/internal/command/testdata/stderr_script.sh
new file mode 100755
index 000000000..807d9860e
--- /dev/null
+++ b/internal/command/testdata/stderr_script.sh
@@ -0,0 +1,7 @@
+#!/bin/bash
+
+for i in {1..5}
+do
+ echo 'hello world' 1>&2
+done
+exit 1 \ No newline at end of file
diff --git a/internal/config/config.go b/internal/config/config.go
index 4f625783e..ed562800c 100644
--- a/internal/config/config.go
+++ b/internal/config/config.go
@@ -80,10 +80,11 @@ type Storage struct {
// Logging contains the logging configuration for Gitaly
type Logging struct {
- Format string
- SentryDSN string `toml:"sentry_dsn"`
- RubySentryDSN string `toml:"ruby_sentry_dsn"`
- Level string `toml:"level"`
+ Format string
+ SentryDSN string `toml:"sentry_dsn"`
+ RubySentryDSN string `toml:"ruby_sentry_dsn"`
+ SentryEnvironment string `toml:"sentry_environment"`
+ Level string `toml:"level"`
}
// Prometheus contains additional configuration data for prometheus
diff --git a/internal/config/sentry.go b/internal/config/sentry.go
index 77a6a8029..1b8aa7d06 100644
--- a/internal/config/sentry.go
+++ b/internal/config/sentry.go
@@ -20,6 +20,10 @@ func ConfigureSentry(version string) {
raven.SetRelease("v" + version)
}
+ if Config.Logging.SentryEnvironment != "" {
+ raven.SetEnvironment(Config.Logging.SentryEnvironment)
+ }
+
panichandler.InstallPanicHandler(func(grpcMethod string, _err interface{}) {
err, ok := _err.(error)
if !ok {
diff --git a/internal/git/catfile/batch.go b/internal/git/catfile/batch.go
index ff7957819..4c7f68193 100644
--- a/internal/git/catfile/batch.go
+++ b/internal/git/catfile/batch.go
@@ -12,7 +12,7 @@ import (
)
// batch encapsulates a 'git cat-file --batch' process
-type batch struct {
+type batchProcess struct {
r *bufio.Reader
w io.WriteCloser
@@ -30,12 +30,15 @@ type batch struct {
sync.Mutex
}
-func newBatch(ctx context.Context, repoPath string, env []string) (*batch, error) {
- b := &batch{}
+func newBatchProcess(ctx context.Context, repoPath string, env []string) (*batchProcess, error) {
+ b := &batchProcess{}
var stdinReader io.Reader
stdinReader, b.w = io.Pipe()
batchCmdArgs := []string{"--git-dir", repoPath, "cat-file", "--batch"}
+
+ currentCatfileProcesses.Inc()
+ totalCatfileProcesses.Inc()
batchCmd, err := git.BareCommand(ctx, stdinReader, nil, nil, env, batchCmdArgs...)
if err != nil {
return nil, err
@@ -45,12 +48,13 @@ func newBatch(ctx context.Context, repoPath string, env []string) (*batch, error
<-ctx.Done()
// This is crucial to prevent leaking file descriptors.
b.w.Close()
+ currentCatfileProcesses.Dec()
}()
return b, nil
}
-func (b *batch) reader(revspec string, expectedType string) (io.Reader, error) {
+func (b *batchProcess) reader(revspec string, expectedType string) (io.Reader, error) {
b.Lock()
defer b.Unlock()
@@ -89,28 +93,35 @@ func (b *batch) reader(revspec string, expectedType string) (io.Reader, error) {
}
return &batchReader{
- batch: b,
- r: io.LimitReader(b.r, oi.Size),
+ batchProcess: b,
+ r: io.LimitReader(b.r, oi.Size),
}, nil
}
-func (b *batch) consume(nBytes int) {
- b.Lock()
- defer b.Unlock()
-
+func (b *batchProcess) consume(nBytes int) {
b.n -= int64(nBytes)
if b.n < 1 {
panic("too many bytes read from batch")
}
}
+func (b *batchProcess) hasUnreadData() bool {
+ b.Lock()
+ defer b.Unlock()
+
+ return b.n > 1
+}
+
type batchReader struct {
- *batch
+ *batchProcess
r io.Reader
}
func (br *batchReader) Read(p []byte) (int, error) {
+ br.batchProcess.Lock()
+ defer br.batchProcess.Unlock()
+
n, err := br.r.Read(p)
- br.batch.consume(n)
+ br.batchProcess.consume(n)
return n, err
}
diff --git a/internal/git/catfile/batch_cache.go b/internal/git/catfile/batch_cache.go
new file mode 100644
index 000000000..10ea489a1
--- /dev/null
+++ b/internal/git/catfile/batch_cache.go
@@ -0,0 +1,185 @@
+package catfile
+
+import (
+ "strings"
+ "sync"
+ "time"
+
+ "github.com/prometheus/client_golang/prometheus"
+ "gitlab.com/gitlab-org/gitaly/internal/git/repository"
+)
+
+const (
+ // DefaultBatchfileTTL is the default ttl for batch files to live in the cache
+ DefaultBatchfileTTL = 10 * time.Second
+
+ // CacheMaxItems is the default configuration for maximum entries in the batch cache
+ CacheMaxItems = 100
+
+ defaultEvictionInterval = 1 * time.Second
+)
+
+var catfileCacheMembers = prometheus.NewGauge(
+ prometheus.GaugeOpts{
+ Name: "gitaly_catfile_cache_members",
+ Help: "Gauge of catfile cache members",
+ },
+)
+
+var cache *batchCache
+
+func init() {
+ prometheus.MustRegister(catfileCacheMembers)
+ cache = newCache(DefaultBatchfileTTL, CacheMaxItems)
+}
+
+func newCacheKey(sessionID string, repo repository.GitRepo) key {
+ return key{
+ sessionID: sessionID,
+ repoStorage: repo.GetStorageName(),
+ repoRelPath: repo.GetRelativePath(),
+ repoObjDir: repo.GetGitObjectDirectory(),
+ repoAltDir: strings.Join(repo.GetGitAlternateObjectDirectories(), ","),
+ }
+}
+
+type key struct {
+ sessionID string
+ repoStorage string
+ repoRelPath string
+ repoObjDir string
+ repoAltDir string
+}
+
+type entry struct {
+ key
+ value *Batch
+ expiry time.Time
+}
+
+// batchCache entries always get added to the back of the list. If the
+// list gets too long, we evict entries from the front of the list. When
+// an entry gets added it gets an expiry time based on a fixed TTL. A
+// monitor goroutine periodically evicts expired entries.
+type batchCache struct {
+ entries []*entry
+ sync.Mutex
+
+ // maxLen is the maximum number of keys in the cache
+ maxLen int
+
+ // ttl is the fixed ttl for cache entries
+ ttl time.Duration
+}
+
+func newCache(ttl time.Duration, maxLen int) *batchCache {
+ return newCacheWithRefresh(ttl, maxLen, defaultEvictionInterval)
+}
+
+func newCacheWithRefresh(ttl time.Duration, maxLen int, refreshInterval time.Duration) *batchCache {
+ bc := &batchCache{
+ maxLen: maxLen,
+ ttl: ttl,
+ }
+
+ go bc.monitor(refreshInterval)
+ return bc
+}
+
+func (bc *batchCache) monitor(refreshInterval time.Duration) {
+ ticker := time.NewTicker(refreshInterval)
+
+ for range ticker.C {
+ bc.EnforceTTL(time.Now())
+ }
+}
+
+// Add adds a key, value pair to bc. If there are too many keys in bc
+// already Add will evict old keys until the length is OK again.
+func (bc *batchCache) Add(k key, b *Batch) {
+ bc.Lock()
+ defer bc.Unlock()
+
+ if i, ok := bc.lookup(k); ok {
+ catfileCacheCounter.WithLabelValues("duplicate").Inc()
+ bc.delete(i, true)
+ }
+
+ ent := &entry{key: k, value: b, expiry: time.Now().Add(bc.ttl)}
+ bc.entries = append(bc.entries, ent)
+
+ for bc.len() > bc.maxLen {
+ bc.evictHead()
+ }
+
+ catfileCacheMembers.Set(float64(bc.len()))
+}
+
+func (bc *batchCache) head() *entry { return bc.entries[0] }
+func (bc *batchCache) evictHead() { bc.delete(0, true) }
+func (bc *batchCache) len() int { return len(bc.entries) }
+
+// Checkout removes a value from bc. After use the caller can re-add the value with bc.Add.
+func (bc *batchCache) Checkout(k key) (*Batch, bool) {
+ bc.Lock()
+ defer bc.Unlock()
+
+ i, ok := bc.lookup(k)
+ if !ok {
+ catfileCacheCounter.WithLabelValues("miss").Inc()
+ return nil, false
+ }
+
+ catfileCacheCounter.WithLabelValues("hit").Inc()
+
+ ent := bc.entries[i]
+ bc.delete(i, false)
+ return ent.value, true
+}
+
+// EnforceTTL evicts all entries older than now, assuming the entry
+// expiry times are increasing.
+func (bc *batchCache) EnforceTTL(now time.Time) {
+ bc.Lock()
+ defer bc.Unlock()
+
+ for bc.len() > 0 && now.After(bc.head().expiry) {
+ bc.evictHead()
+ }
+}
+
+func (bc *batchCache) EvictAll() {
+ bc.Lock()
+ defer bc.Unlock()
+
+ for bc.len() > 0 {
+ bc.evictHead()
+ }
+}
+
+// ExpireAll is used to expire all of the batches in the cache
+func ExpireAll() {
+ cache.EvictAll()
+}
+
+func (bc *batchCache) lookup(k key) (int, bool) {
+ for i, ent := range bc.entries {
+ if ent.key == k {
+ return i, true
+ }
+
+ }
+
+ return -1, false
+}
+
+func (bc *batchCache) delete(i int, wantClose bool) {
+ ent := bc.entries[i]
+
+ if wantClose {
+ ent.value.Close()
+ }
+
+ bc.entries = append(bc.entries[:i], bc.entries[i+1:]...)
+ catfileCacheMembers.Set(float64(bc.len()))
+}
diff --git a/internal/git/catfile/batch_cache_test.go b/internal/git/catfile/batch_cache_test.go
new file mode 100644
index 000000000..0f885d314
--- /dev/null
+++ b/internal/git/catfile/batch_cache_test.go
@@ -0,0 +1,178 @@
+package catfile
+
+import (
+ "fmt"
+ "testing"
+ "time"
+
+ "github.com/stretchr/testify/require"
+)
+
+func TestCacheAdd(t *testing.T) {
+ const maxLen = 3
+ bc := newCache(time.Hour, maxLen)
+
+ key0 := testKey(0)
+ value0 := testValue()
+ bc.Add(key0, value0)
+ requireCacheValid(t, bc)
+
+ key1 := testKey(1)
+ bc.Add(key1, testValue())
+ requireCacheValid(t, bc)
+
+ key2 := testKey(2)
+ bc.Add(key2, testValue())
+ requireCacheValid(t, bc)
+
+ // Because maxLen is 3, and key0 is oldest, we expect that adding key3
+ // will kick out key0.
+ key3 := testKey(3)
+ bc.Add(key3, testValue())
+ requireCacheValid(t, bc)
+
+ require.Equal(t, maxLen, bc.len(), "length should be maxLen")
+ require.True(t, value0.isClosed(), "value0 should be closed")
+ require.Equal(t, []key{key1, key2, key3}, keys(bc))
+}
+
+func TestCacheAddTwice(t *testing.T) {
+ bc := newCache(time.Hour, 10)
+
+ key0 := testKey(0)
+ value0 := testValue()
+ bc.Add(key0, value0)
+ requireCacheValid(t, bc)
+
+ key1 := testKey(1)
+ bc.Add(key1, testValue())
+ requireCacheValid(t, bc)
+
+ require.Equal(t, key0, bc.head().key, "key0 should be oldest key")
+
+ value2 := testValue()
+ bc.Add(key0, value2)
+ requireCacheValid(t, bc)
+
+ require.Equal(t, key1, bc.head().key, "key1 should be oldest key")
+ require.Equal(t, value2, bc.head().value)
+
+ require.True(t, value0.isClosed(), "value0 should be closed")
+}
+
+func TestCacheCheckout(t *testing.T) {
+ bc := newCache(time.Hour, 10)
+
+ key0 := testKey(0)
+ value0 := testValue()
+ bc.Add(key0, value0)
+
+ v, ok := bc.Checkout(key{sessionID: "foo"})
+ requireCacheValid(t, bc)
+ require.Nil(t, v, "expect nil value when key not found")
+ require.False(t, ok, "ok flag")
+
+ v, ok = bc.Checkout(key0)
+ requireCacheValid(t, bc)
+
+ require.Equal(t, value0, v)
+ require.True(t, ok, "ok flag")
+
+ require.False(t, v.isClosed(), "value should not be closed after checkout")
+
+ v, ok = bc.Checkout(key0)
+ require.False(t, ok, "ok flag after second checkout")
+ require.Nil(t, v, "value from second checkout")
+}
+
+func TestCacheEnforceTTL(t *testing.T) {
+ ttl := time.Hour
+ bc := newCache(ttl, 10)
+
+ sleep := func() { time.Sleep(2 * time.Millisecond) }
+
+ key0 := testKey(0)
+ value0 := testValue()
+ bc.Add(key0, value0)
+ sleep()
+
+ key1 := testKey(1)
+ value1 := testValue()
+ bc.Add(key1, value1)
+ sleep()
+
+ cutoff := time.Now().Add(ttl)
+ sleep()
+
+ key2 := testKey(2)
+ bc.Add(key2, testValue())
+ sleep()
+
+ key3 := testKey(3)
+ bc.Add(key3, testValue())
+ sleep()
+
+ requireCacheValid(t, bc)
+
+ // We expect this cutoff to cause eviction of key0 and key1 but no other keys.
+ bc.EnforceTTL(cutoff)
+
+ requireCacheValid(t, bc)
+
+ for i, v := range []*Batch{value0, value1} {
+ require.True(t, v.isClosed(), "value %d %v should be closed", i, v)
+ }
+
+ require.Equal(t, []key{key2, key3}, keys(bc), "remaining keys after EnforceTTL")
+
+ bc.EnforceTTL(cutoff)
+
+ requireCacheValid(t, bc)
+ require.Equal(t, []key{key2, key3}, keys(bc), "remaining keys after second EnforceTTL")
+}
+
+func TestAutoExpiry(t *testing.T) {
+ ttl := 5 * time.Millisecond
+ bc := newCacheWithRefresh(ttl, 10, 1*time.Millisecond)
+
+ key0 := testKey(0)
+ value0 := testValue()
+ bc.Add(key0, value0)
+ requireCacheValid(t, bc)
+
+ bc.Lock()
+ require.Contains(t, keys(bc), key0, "key should still be in map")
+ require.False(t, value0.isClosed(), "value should not have been closed")
+ bc.Unlock()
+
+ time.Sleep(2 * ttl)
+
+ bc.Lock()
+ require.NotContains(t, keys(bc), key0, "key should no longer be in map")
+ require.True(t, value0.isClosed(), "value should be closed after eviction")
+ bc.Unlock()
+}
+
+func requireCacheValid(t *testing.T, bc *batchCache) {
+ bc.Lock()
+ defer bc.Unlock()
+
+ for _, ent := range bc.entries {
+
+ v := ent.value
+ require.False(t, v.isClosed(), "values in cache should not be closed: %v %v", ent, v)
+ }
+}
+
+func testValue() *Batch { return &Batch{} }
+
+func testKey(i int) key { return key{sessionID: fmt.Sprintf("key-%d", i)} }
+
+func keys(bc *batchCache) []key {
+ var result []key
+ for _, ent := range bc.entries {
+ result = append(result, ent.key)
+ }
+
+ return result
+}
diff --git a/internal/git/catfile/batchcheck.go b/internal/git/catfile/batchcheck.go
index 476ed457d..77f49a05b 100644
--- a/internal/git/catfile/batchcheck.go
+++ b/internal/git/catfile/batchcheck.go
@@ -27,6 +27,7 @@ func newBatchCheck(ctx context.Context, repoPath string, env []string) (*batchCh
if err != nil {
return nil, err
}
+
bc.r = bufio.NewReader(batchCmd)
go func() {
<-ctx.Done()
diff --git a/internal/git/catfile/catfile.go b/internal/git/catfile/catfile.go
index 75e5924ca..288470170 100644
--- a/internal/git/catfile/catfile.go
+++ b/internal/git/catfile/catfile.go
@@ -3,19 +3,60 @@ package catfile
import (
"context"
"io"
+ "sync"
+ "github.com/prometheus/client_golang/prometheus"
"gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
"gitlab.com/gitlab-org/gitaly/internal/git/alternates"
+ "gitlab.com/gitlab-org/gitaly/internal/metadata"
+ "gitlab.com/gitlab-org/gitaly/internal/metadata/featureflag"
)
+var catfileCacheCounter = prometheus.NewCounterVec(
+ prometheus.CounterOpts{
+ Name: "gitaly_catfile_cache_total",
+ Help: "Counter of catfile cache hit/miss",
+ },
+ []string{"type"},
+)
+
+var currentCatfileProcesses = prometheus.NewGauge(
+ prometheus.GaugeOpts{
+ Name: "gitaly_catfile_processes",
+ Help: "Gauge of active catfile processes",
+ },
+)
+
+var totalCatfileProcesses = prometheus.NewCounter(
+ prometheus.CounterOpts{
+ Name: "gitaly_catfile_processes_total",
+ Help: "Counter of catfile processes",
+ },
+)
+
+const (
+ // CacheFeatureFlagKey is the feature flag key for catfile batch caching. This should match
+ // what is in gitlab-ce
+ CacheFeatureFlagKey = "catfile-cache"
+)
+
+func init() {
+ prometheus.MustRegister(catfileCacheCounter)
+ prometheus.MustRegister(currentCatfileProcesses)
+ prometheus.MustRegister(totalCatfileProcesses)
+}
+
// Batch abstracts 'git cat-file --batch' and 'git cat-file --batch-check'.
// It lets you retrieve object metadata and raw objects from a Git repo.
//
// A Batch instance can only serve single request at a time. If you want to
// use it across multiple goroutines you need to add your own locking.
type Batch struct {
+ sync.Mutex
*batchCheck
- *batch
+ *batchProcess
+ cancel func()
+ closed bool
}
// Info returns an ObjectInfo if spec exists. If spec does not exist the
@@ -29,7 +70,7 @@ func (c *Batch) Info(revspec string) (*ObjectInfo, error) {
// and check the object type. Caller must consume the Reader before
// making another call on C.
func (c *Batch) Tree(revspec string) (io.Reader, error) {
- return c.batch.reader(revspec, "tree")
+ return c.batchProcess.reader(revspec, "tree")
}
// Commit returns a raw commit object. It is an error if revspec does not
@@ -37,7 +78,7 @@ func (c *Batch) Tree(revspec string) (io.Reader, error) {
// and check the object type. Caller must consume the Reader before
// making another call on C.
func (c *Batch) Commit(revspec string) (io.Reader, error) {
- return c.batch.reader(revspec, "commit")
+ return c.batchProcess.reader(revspec, "commit")
}
// Blob returns a reader for the requested blob. The entire blob must be
@@ -46,13 +87,37 @@ func (c *Batch) Commit(revspec string) (io.Reader, error) {
// It is an error if revspec does not point to a blob. To prevent this
// first use Info to resolve the revspec and check the object type.
func (c *Batch) Blob(revspec string) (io.Reader, error) {
- return c.batch.reader(revspec, "blob")
+ return c.batchProcess.reader(revspec, "blob")
}
// Tag returns a raw tag object. Caller must consume the Reader before
// making another call on C.
func (c *Batch) Tag(revspec string) (io.Reader, error) {
- return c.batch.reader(revspec, "tag")
+ return c.batchProcess.reader(revspec, "tag")
+}
+
+// Close closes the writers for batchCheck and batch. This is only used for
+// cached Batches
+func (c *Batch) Close() {
+ c.Lock()
+ defer c.Unlock()
+
+ if c.closed {
+ return
+ }
+
+ c.closed = true
+ if c.cancel != nil {
+ // both c.batch and c.batchCheck have goroutines that listen on <ctx.Done()
+ // when this is cancelled, it will cause those goroutines to close both writers
+ c.cancel()
+ }
+}
+
+func (c *Batch) isClosed() bool {
+ c.Lock()
+ defer c.Unlock()
+ return c.closed
}
// New returns a new Batch instance. It is important that ctx gets canceled
@@ -68,17 +133,60 @@ func New(ctx context.Context, repo *gitalypb.Repository) (*Batch, error) {
return nil, err
}
- c := &Batch{}
+ sessionID := metadata.GetValue(ctx, "gitaly-session-id")
+
+ if featureflag.IsDisabled(ctx, CacheFeatureFlagKey) || sessionID == "" {
+ return newBatch(ctx, repoPath, env)
+ }
- c.batch, err = newBatch(ctx, repoPath, env)
+ cacheKey := newCacheKey(sessionID, repo)
+ requestDone := ctx.Done()
+
+ if c, ok := cache.Checkout(cacheKey); ok {
+ go returnWhenDone(requestDone, cache, cacheKey, c)
+ return c, nil
+ }
+
+ // if we are using caching, create a fresh context for the new batch
+ // and initialize the new batch with a cache key and cancel function
+ cacheCtx, cacheCancel := context.WithCancel(context.Background())
+ c, err := newBatch(cacheCtx, repoPath, env)
if err != nil {
return nil, err
}
- c.batchCheck, err = newBatchCheck(ctx, repoPath, env)
+ c.cancel = cacheCancel
+ go returnWhenDone(requestDone, cache, cacheKey, c)
+
+ return c, nil
+}
+
+func returnWhenDone(done <-chan struct{}, bc *batchCache, cacheKey key, c *Batch) {
+ <-done
+
+ if c == nil || c.isClosed() {
+ return
+ }
+
+ if c.hasUnreadData() {
+ catfileCacheCounter.WithLabelValues("dirty").Inc()
+ c.Close()
+ return
+ }
+
+ bc.Add(cacheKey, c)
+}
+
+func newBatch(ctx context.Context, repoPath string, env []string) (*Batch, error) {
+ batch, err := newBatchProcess(ctx, repoPath, env)
if err != nil {
return nil, err
}
- return c, nil
+ batchCheck, err := newBatchCheck(ctx, repoPath, env)
+ if err != nil {
+ return nil, err
+ }
+
+ return &Batch{batchProcess: batch, batchCheck: batchCheck}, nil
}
diff --git a/internal/git/log/tag.go b/internal/git/log/tag.go
index 5465d8a09..a9b9cbbcb 100644
--- a/internal/git/log/tag.go
+++ b/internal/git/log/tag.go
@@ -13,6 +13,11 @@ import (
"gitlab.com/gitlab-org/gitaly/internal/helper"
)
+const (
+ // MaxTagReferenceDepth is the maximum depth of tag references we will dereference
+ MaxTagReferenceDepth = 10
+)
+
// GetTagCatfile looks up a commit by tagID using an existing *catfile.Batch instance.
// note: we pass in the tagName because the tag name from refs/tags may be different
// than the name found in the actual tag object. We want to use the tagName found in refs/tags
@@ -88,14 +93,58 @@ func buildAnnotatedTag(b *catfile.Batch, tagID, name string, header *tagHeader,
tag.Message = tag.Message[:max]
}
- if header.tagType == "commit" {
- commit, err := GetCommitCatfile(b, header.oid)
+ var err error
+ switch header.tagType {
+ case "commit":
+ tag.TargetCommit, err = GetCommitCatfile(b, header.oid)
if err != nil {
return nil, fmt.Errorf("buildAnnotatedTag error when getting target commit: %v", err)
}
- tag.TargetCommit = commit
+ case "tag":
+ tag.TargetCommit, err = dereferenceTag(b, header.oid)
+ if err != nil {
+ return nil, fmt.Errorf("buildAnnotatedTag error when dereferencing tag: %v", err)
+ }
}
return tag, nil
}
+
+// dereferenceTag recursively dereferences annotated tags until it finds a commit.
+// This matches the original behavior in the ruby implementation.
+// we also protect against circular tag references. Even though this is not possible in git,
+// we still want to protect against an infinite looop
+
+func dereferenceTag(b *catfile.Batch, Oid string) (*gitalypb.GitCommit, error) {
+ for depth := 0; depth < MaxTagReferenceDepth; depth++ {
+ i, err := b.Info(Oid)
+ if err != nil {
+ return nil, err
+ }
+
+ switch i.Type {
+ case "tag":
+ r, err := b.Tag(Oid)
+ if err != nil {
+ return nil, err
+ }
+
+ header, _, err := splitRawTag(r)
+ if err != nil {
+ return nil, err
+ }
+
+ Oid = header.oid
+ continue
+ case "commit":
+ return GetCommitCatfile(b, Oid)
+ default: // This current tag points to a tree or a blob
+ return nil, nil
+ }
+ }
+
+ // at this point the tag nesting has gone too deep. We want to return silently here however, as we don't
+ // want to fail the entire request if one tag is nested too deeply.
+ return nil, nil
+}
diff --git a/internal/git/objectpool/fetch.go b/internal/git/objectpool/fetch.go
new file mode 100644
index 000000000..2b967ad70
--- /dev/null
+++ b/internal/git/objectpool/fetch.go
@@ -0,0 +1,68 @@
+package objectpool
+
+import (
+ "bufio"
+ "context"
+
+ "gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
+ "gitlab.com/gitlab-org/gitaly/internal/command"
+ "gitlab.com/gitlab-org/gitaly/internal/git"
+ "gitlab.com/gitlab-org/gitaly/internal/helper"
+)
+
+// FetchFromOrigin initializes the pool and fetches the objects from its origin repository
+func (o *ObjectPool) FetchFromOrigin(ctx context.Context, origin *gitalypb.Repository) error {
+ if err := o.Init(ctx); err != nil {
+ return err
+ }
+
+ originPath, err := helper.GetPath(origin)
+
+ if err != nil {
+ return err
+ }
+
+ getRemotes, err := git.Command(ctx, o, "remote")
+ if err != nil {
+ return err
+ }
+
+ remoteReader := bufio.NewScanner(getRemotes)
+
+ var originExists bool
+ for remoteReader.Scan() {
+ if remoteReader.Text() == "origin" {
+ originExists = true
+ }
+ }
+ if err := getRemotes.Wait(); err != nil {
+ return err
+ }
+
+ var setOriginCmd *command.Command
+ if originExists {
+ setOriginCmd, err = git.Command(ctx, o, "remote", "set-url", "origin", originPath)
+ if err != nil {
+ return err
+ }
+ } else {
+ setOriginCmd, err = git.Command(ctx, o, "remote", "add", "origin", originPath)
+ if err != nil {
+ return err
+ }
+ }
+
+ if err := setOriginCmd.Wait(); err != nil {
+ return err
+ }
+
+ fetchCmd, err := git.Command(ctx, o, "fetch", "--quiet", "origin")
+ if err != nil {
+ return err
+ }
+
+ if err := fetchCmd.Wait(); err != nil {
+ return err
+ }
+ return nil
+}
diff --git a/internal/git/objectpool/pool.go b/internal/git/objectpool/pool.go
index 67d22870e..699903cbf 100644
--- a/internal/git/objectpool/pool.go
+++ b/internal/git/objectpool/pool.go
@@ -7,6 +7,7 @@ import (
"path"
"gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
+ "gitlab.com/gitlab-org/gitaly/internal/git"
"gitlab.com/gitlab-org/gitaly/internal/helper"
)
@@ -92,3 +93,21 @@ func (o *ObjectPool) Create(ctx context.Context, repo *gitalypb.Repository) (err
func (o *ObjectPool) Remove(ctx context.Context) (err error) {
return os.RemoveAll(o.FullPath())
}
+
+// Init will intiailize an empty pool repository
+// if one already exists, it will do nothing
+func (o *ObjectPool) Init(ctx context.Context) (err error) {
+ targetDir := o.FullPath()
+
+ if helper.IsGitDirectory(targetDir) {
+ return nil
+ }
+
+ initArgs := []string{"init", "--bare", targetDir}
+ cmd, err := git.CommandWithoutRepo(ctx, initArgs...)
+ if err != nil {
+ return err
+ }
+
+ return cmd.Wait()
+}
diff --git a/internal/git/proto.go b/internal/git/proto.go
index bfbbcfcc2..dfe112311 100644
--- a/internal/git/proto.go
+++ b/internal/git/proto.go
@@ -62,25 +62,90 @@ func Version() (string, error) {
return ver[2], nil
}
-// SupportsDeltaIslands checks if a version string (e.g. "2.20.0")
-// corresponds to a Git version that supports delta islands.
-func SupportsDeltaIslands(version string) (bool, error) {
- versionSplit := strings.SplitN(version, ".", 3)
+// VersionLessThan returns true if the parsed version value of v1Str is less
+// than the parsed version value of v2Str. An error can be returned if the
+// strings cannot be parsed.
+// Note: this is an extremely simplified semver comparison algorithm
+func VersionLessThan(v1Str, v2Str string) (bool, error) {
+ var (
+ v1, v2 version
+ err error
+ )
+
+ for _, v := range []struct {
+ string
+ *version
+ }{
+ {v1Str, &v1},
+ {v2Str, &v2},
+ } {
+ *v.version, err = parseVersion(v.string)
+ if err != nil {
+ return false, err
+ }
+ }
+
+ return versionLessThan(v1, v2), nil
+}
+
+func versionLessThan(v1, v2 version) bool {
+ switch {
+
+ case v1.major < v2.major:
+ return true
+ case v1.major > v2.major:
+ return false
+
+ case v1.minor < v2.minor:
+ return true
+ case v1.minor > v2.minor:
+ return false
+
+ case v1.patch < v2.patch:
+ return true
+ case v1.patch > v2.patch:
+ return false
+
+ default:
+ // this should only be reachable when versions are equal
+ return false
+
+ }
+}
+
+type version struct {
+ major, minor, patch uint32
+}
+
+func parseVersion(versionStr string) (version, error) {
+ versionSplit := strings.SplitN(versionStr, ".", 3)
if len(versionSplit) < 3 {
- return false, fmt.Errorf("expected major.minor.patch in %q", version)
+ return version{}, fmt.Errorf("expected major.minor.patch in %q", versionStr)
}
- var major, minor uint32
- for i, v := range []*uint32{&major, &minor} {
+ var ver version
+
+ for i, v := range []*uint32{&ver.major, &ver.minor, &ver.patch} {
n64, err := strconv.ParseUint(versionSplit[i], 10, 32)
if err != nil {
- return false, err
+ return version{}, err
}
*v = uint32(n64)
}
- return major >= 2 && minor >= 20, nil
+ return ver, nil
+}
+
+// SupportsDeltaIslands checks if a version string (e.g. "2.20.0")
+// corresponds to a Git version that supports delta islands.
+func SupportsDeltaIslands(versionStr string) (bool, error) {
+ v, err := parseVersion(versionStr)
+ if err != nil {
+ return false, err
+ }
+
+ return !versionLessThan(v, version{2, 20, 0}), nil
}
// BuildGitOptions helps to generate options to the git command.
diff --git a/internal/git/proto_test.go b/internal/git/proto_test.go
new file mode 100644
index 000000000..3acb952ae
--- /dev/null
+++ b/internal/git/proto_test.go
@@ -0,0 +1,92 @@
+package git_test
+
+import (
+ "testing"
+
+ "github.com/stretchr/testify/require"
+ "gitlab.com/gitlab-org/gitaly/internal/git"
+)
+
+func TestVersionComparator(t *testing.T) {
+ for _, tc := range []struct {
+ v1, v2 string
+ expect bool
+ }{
+ // v1 < v2 == expect
+ {"0.0.0", "0.0.0", false},
+ {"0.0.0", "0.0.1", true},
+ {"0.0.0", "0.1.0", true},
+ {"0.0.0", "0.1.1", true},
+ {"0.0.0", "1.0.0", true},
+ {"0.0.0", "1.0.1", true},
+ {"0.0.0", "1.1.0", true},
+ {"0.0.0", "1.1.1", true},
+
+ {"0.0.1", "0.0.0", false},
+ {"0.0.1", "0.0.1", false},
+ {"0.0.1", "0.1.0", true},
+ {"0.0.1", "0.1.1", true},
+ {"0.0.1", "1.0.0", true},
+ {"0.0.1", "1.0.1", true},
+ {"0.0.1", "1.1.0", true},
+ {"0.0.1", "1.1.1", true},
+
+ {"0.1.0", "0.0.0", false},
+ {"0.1.0", "0.0.1", false},
+ {"0.1.0", "0.1.0", false},
+ {"0.1.0", "0.1.1", true},
+ {"0.1.0", "1.0.0", true},
+ {"0.1.0", "1.0.1", true},
+ {"0.1.0", "1.1.0", true},
+ {"0.1.0", "1.1.1", true},
+
+ {"0.1.1", "0.0.0", false},
+ {"0.1.1", "0.0.1", false},
+ {"0.1.1", "0.1.0", false},
+ {"0.1.1", "0.1.1", false},
+ {"0.1.1", "1.0.0", true},
+ {"0.1.1", "1.0.1", true},
+ {"0.1.1", "1.1.0", true},
+ {"0.1.1", "1.1.1", true},
+
+ {"1.0.0", "0.0.0", false},
+ {"1.0.0", "0.0.1", false},
+ {"1.0.0", "0.1.0", false},
+ {"1.0.0", "0.1.1", false},
+ {"1.0.0", "1.0.0", false},
+ {"1.0.0", "1.0.1", true},
+ {"1.0.0", "1.1.0", true},
+ {"1.0.0", "1.1.1", true},
+
+ {"1.0.1", "0.0.0", false},
+ {"1.0.1", "0.0.1", false},
+ {"1.0.1", "0.1.0", false},
+ {"1.0.1", "0.1.1", false},
+ {"1.0.1", "1.0.0", false},
+ {"1.0.1", "1.0.1", false},
+ {"1.0.1", "1.1.0", true},
+ {"1.0.1", "1.1.1", true},
+
+ {"1.1.0", "0.0.0", false},
+ {"1.1.0", "0.0.1", false},
+ {"1.1.0", "0.1.0", false},
+ {"1.1.0", "0.1.1", false},
+ {"1.1.0", "1.0.0", false},
+ {"1.1.0", "1.0.1", false},
+ {"1.1.0", "1.1.0", false},
+ {"1.1.0", "1.1.1", true},
+
+ {"1.1.1", "0.0.0", false},
+ {"1.1.1", "0.0.1", false},
+ {"1.1.1", "0.1.0", false},
+ {"1.1.1", "0.1.1", false},
+ {"1.1.1", "1.0.0", false},
+ {"1.1.1", "1.0.1", false},
+ {"1.1.1", "1.1.0", false},
+ {"1.1.1", "1.1.1", false},
+ } {
+ actual, err := git.VersionLessThan(tc.v1, tc.v2)
+ require.NoError(t, err)
+ require.Equal(t, tc.expect, actual)
+ }
+}
diff --git a/internal/helper/security.go b/internal/helper/security.go
index afbcced9d..e66186580 100644
--- a/internal/helper/security.go
+++ b/internal/helper/security.go
@@ -1,6 +1,7 @@
package helper
import (
+ "errors"
"os"
"regexp"
"strings"
@@ -24,3 +25,8 @@ var hostPattern = regexp.MustCompile(`(?i)([a-z][a-z0-9+\-.]*://)([a-z0-9\-._~%!
func SanitizeString(str string) string {
return hostPattern.ReplaceAllString(str, "$1[FILTERED]@$3$4")
}
+
+// SanitizeError does the same thing as SanitizeString but for error types
+func SanitizeError(err error) error {
+ return errors.New(SanitizeString(err.Error()))
+}
diff --git a/internal/logsanitizer/url.go b/internal/logsanitizer/url.go
index ae56ddd83..8640570f5 100644
--- a/internal/logsanitizer/url.go
+++ b/internal/logsanitizer/url.go
@@ -8,7 +8,7 @@ import (
// Pattern taken from Regular Expressions Cookbook, slightly modified though
// |Scheme |User |Named/IPv4 host|IPv6+ host
-var hostPattern = regexp.MustCompile(`(?i)([a-z][a-z0-9+\-.]*://)([a-z0-9\-._~%!$&'()*+,;=:]+@)([a-z0-9\-._~%]+|\[[a-z0-9\-._~%!$&'()*+,;=:]+\])`)
+var hostPattern = regexp.MustCompile(`(?i)([a-z][a-z0-9+\-.]*://)?([a-z0-9\-._~%!$&'()*+,;=:]+@)([a-z0-9\-._~%]+|\[[a-z0-9\-._~%!$&'()*+,;=:]+\])`)
// URLSanitizerHook stores which gRPC methods to perform sanitization for.
type URLSanitizerHook struct {
diff --git a/internal/logsanitizer/url_test.go b/internal/logsanitizer/url_test.go
index b3fc116fd..5b21d36f0 100644
--- a/internal/logsanitizer/url_test.go
+++ b/internal/logsanitizer/url_test.go
@@ -17,6 +17,7 @@ func TestUrlSanitizerHook(t *testing.T) {
urlSanitizer.AddPossibleGrpcMethod(
"UpdateRemoteMirror",
"CreateRepositoryFromURL",
+ "FetchRemote",
)
logger := log.New()
@@ -58,6 +59,15 @@ func TestUrlSanitizerHook(t *testing.T) {
expectedString: "asked for: https://[FILTERED]@gitlab.com/foo/bar",
},
{
+ desc: "with URL without scheme output",
+ logFunc: func() {
+ logger.WithFields(log.Fields{
+ "grpc.method": "FetchRemote",
+ }).Info("fatal: unable to look up foo:bar@non-existent.org (port 9418) (nodename nor servname provided, or not known")
+ },
+ expectedString: "unable to look up [FILTERED]@non-existent.org (port 9418) (nodename nor servname provided, or not known",
+ },
+ {
desc: "with gRPC method not added to the list",
logFunc: func() {
logger.WithFields(log.Fields{
diff --git a/internal/featureflag/grpc_header.go b/internal/metadata/featureflag/grpc_header.go
index e71f1cfe9..e71f1cfe9 100644
--- a/internal/featureflag/grpc_header.go
+++ b/internal/metadata/featureflag/grpc_header.go
diff --git a/internal/featureflag/grpc_header_test.go b/internal/metadata/featureflag/grpc_header_test.go
index 8d18c6037..8d18c6037 100644
--- a/internal/featureflag/grpc_header_test.go
+++ b/internal/metadata/featureflag/grpc_header_test.go
diff --git a/internal/metadata/metadata.go b/internal/metadata/metadata.go
new file mode 100644
index 000000000..e78ec0843
--- /dev/null
+++ b/internal/metadata/metadata.go
@@ -0,0 +1,18 @@
+package metadata
+
+import (
+ "context"
+
+ "google.golang.org/grpc/metadata"
+)
+
+// GetValue returns the first value in the metadata slice based on a key
+func GetValue(ctx context.Context, key string) string {
+ md, ok := metadata.FromIncomingContext(ctx)
+ if ok {
+ if values, ok := md[key]; ok && len(values) > 0 {
+ return values[0]
+ }
+ }
+ return ""
+}
diff --git a/internal/praefect/coordinator.go b/internal/praefect/coordinator.go
index 2229019e3..9c6634a2e 100644
--- a/internal/praefect/coordinator.go
+++ b/internal/praefect/coordinator.go
@@ -5,6 +5,9 @@ import (
"fmt"
"sync"
+ "gitlab.com/gitlab-org/gitaly/internal/praefect/protoregistry"
+
+ "github.com/golang/protobuf/protoc-gen-go/descriptor"
"github.com/mwitkow/grpc-proxy/proxy"
"github.com/sirupsen/logrus"
"gitlab.com/gitlab-org/gitaly/client"
@@ -22,18 +25,28 @@ type Coordinator struct {
storageLoc string
- nodes map[string]*grpc.ClientConn
+ nodes map[string]*grpc.ClientConn
+ registry *protoregistry.Registry
}
// NewCoordinator returns a new Coordinator that utilizes the provided logger
-func NewCoordinator(l *logrus.Logger, storageLoc string) *Coordinator {
+func NewCoordinator(l *logrus.Logger, storageLoc string, fileDescriptors ...*descriptor.FileDescriptorProto) *Coordinator {
+ registry := protoregistry.New()
+ registry.RegisterFiles(fileDescriptors...)
+
return &Coordinator{
log: l,
storageLoc: storageLoc,
nodes: make(map[string]*grpc.ClientConn),
+ registry: registry,
}
}
+// RegisterProtos allows coordinator to register new protos on the fly
+func (c *Coordinator) RegisterProtos(protos ...*descriptor.FileDescriptorProto) error {
+ return c.registry.RegisterFiles(protos...)
+}
+
// GetStorageNode returns the registered node for the given storage location
func (c *Coordinator) GetStorageNode(storage string) (Node, error) {
cc, ok := c.getConn(storage)
diff --git a/internal/praefect/datastore.go b/internal/praefect/datastore.go
index 1dfaa2dca..fb5b2daea 100644
--- a/internal/praefect/datastore.go
+++ b/internal/praefect/datastore.go
@@ -1,30 +1,58 @@
-/*Package praefect provides data models and datastore persistence abstractions
-for tracking the state of repository replicas.
-
-See original design discussion:
-https://gitlab.com/gitlab-org/gitaly/issues/1495
-
-
-*/
+// Package praefect provides data models and datastore persistence abstractions
+// for tracking the state of repository replicas.
+//
+// See original design discussion:
+// https://gitlab.com/gitlab-org/gitaly/issues/1495
package praefect
import (
"errors"
+ "fmt"
+ "sort"
"sync"
- "time"
"gitlab.com/gitlab-org/gitaly/internal/praefect/config"
)
+// JobState is an enum that indicates the state of a job
+type JobState int
+
+const (
+ // JobStatePending is the initial job state when it is not yet ready to run
+ // and may indicate recovery from a failure prior to the ready-state
+ JobStatePending = iota
+ // JobStateReady indicates the job is now ready to proceed
+ JobStateReady
+ // JobStateInProgress indicates the job is being processed by a worker
+ JobStateInProgress
+ // JobStateComplete indicates the job is now complete
+ JobStateComplete
+ // JobStateCancelled indicates the job was cancelled. This can occur if the
+ // job is no longer relevant (e.g. a node is moved out of a shard)
+ JobStateCancelled
+)
+
// ReplJob is an instance of a queued replication job. A replication job is
// meant for updating the repository so that it is synced with the primary
// copy. Scheduled indicates when a replication job should be performed.
type ReplJob struct {
- Target string // which storage location to replicate to?
- Source Repository // source for replication
- Scheduled time.Time
+ ID uint64 // autoincrement ID
+ Target string // which storage location to replicate to?
+ Source Repository // source for replication
+ State JobState
}
+// replJobs provides sort manipulation behavior
+type replJobs []ReplJob
+
+func (rjs replJobs) Len() int { return len(rjs) }
+func (rjs replJobs) Swap(i, j int) { rjs[i], rjs[j] = rjs[j], rjs[i] }
+
+// byJobID provides a comparator for sorting jobs
+type byJobID struct{ replJobs }
+
+func (b byJobID) Less(i, j int) bool { return b.replJobs[i].ID < b.replJobs[j].ID }
+
// Datastore is a data persistence abstraction for all of Praefect's
// persistence needs
type Datastore interface {
@@ -48,12 +76,17 @@ type ReplicasDatastore interface {
// replication jobs from the datastore
type ReplJobsDatastore interface {
// GetReplJobs fetches a list of chronologically ordered replication
- // jobs for the given storage replica
- GetReplJobs(storage string, since time.Time, count int) ([]ReplJob, error)
+ // jobs for the given storage replica. The returned list will be at most
+ // count-length.
+ GetIncompleteJobs(storage string, count int) ([]ReplJob, error)
- // PutReplJob will update or create a replication job for the specified repo
- // on a specific storage node
- PutReplJob(repo Repository, when time.Time) error
+ // CreateSecondaryJobs will create replication jobs for each secondary
+ // replica of a repository known to the datastore. A set of replication job
+ // ID's for the created jobs will be returned upon success.
+ CreateSecondaryReplJobs(source Repository) ([]uint64, error)
+
+ // UpdateReplJob updates the state of an existing replication job
+ UpdateReplJob(jobID uint64, newState JobState) error
}
// shard is a set of primary and secondary storage replicas for a project
@@ -62,45 +95,68 @@ type shard struct {
secondaries []string
}
+type jobRecord struct {
+ relativePath string // project's relative path
+ target string
+ state JobState
+}
+
// MemoryDatastore is a simple datastore that isn't persisted to disk. It is
// only intended for early beta requirements and as a reference implementation
// for the eventual SQL implementation
type MemoryDatastore struct {
- mu sync.RWMutex // locks entire datastore
- replicas map[string]shard // projectHash keyed to shards
- storageJobs map[string]map[string]time.Time // keyed by storage then project
+ replicas *struct {
+ sync.RWMutex
+ m map[string]shard // keyed by project's relative path
+ }
+
+ jobs *struct {
+ sync.RWMutex
+ next uint64
+ records map[uint64]jobRecord // all jobs indexed by ID
+ }
}
// NewMemoryDatastore returns an initialized in-memory datastore
-func NewMemoryDatastore(cfg config.Config, immediate time.Time) *MemoryDatastore {
+func NewMemoryDatastore(cfg config.Config) *MemoryDatastore {
m := &MemoryDatastore{
- replicas: map[string]shard{},
- storageJobs: map[string]map[string]time.Time{},
+ replicas: &struct {
+ sync.RWMutex
+ m map[string]shard
+ }{
+ m: map[string]shard{},
+ },
+ jobs: &struct {
+ sync.RWMutex
+ next uint64
+ records map[uint64]jobRecord // all jobs indexed by ID
+ }{
+ next: 0,
+ records: map[uint64]jobRecord{},
+ },
+ }
+
+ secondaries := make([]string, len(cfg.SecondaryServers))
+ for i, server := range cfg.SecondaryServers {
+ secondaries[i] = server.Name
}
- for _, project := range cfg.Whitelist {
+ for _, relativePath := range cfg.Whitelist {
// store the configuration file specified shard
- m.replicas[project] = shard{
- primary: cfg.PrimaryServer.Name,
- secondaries: func() []string {
- servers := make([]string, len(cfg.SecondaryServers))
- for i, server := range cfg.SecondaryServers {
- servers[i] = server.Name
- }
- return servers
- }(),
+ m.replicas.m[relativePath] = shard{
+ primary: cfg.PrimaryServer.Name,
+ secondaries: secondaries,
}
// initialize replication job queue to replicate all whitelisted repos
// to every secondary server
for _, secondary := range cfg.SecondaryServers {
- projectJobs, ok := m.storageJobs[secondary.Name]
- if !ok {
- projectJobs = map[string]time.Time{}
- m.storageJobs[secondary.Name] = projectJobs
+ m.jobs.next++
+ m.jobs.records[m.jobs.next] = jobRecord{
+ state: JobStateReady,
+ target: secondary.Name,
+ relativePath: relativePath,
}
-
- projectJobs[project] = immediate
}
}
@@ -118,20 +174,20 @@ func (md *MemoryDatastore) GetSecondaries(primary Repository) ([]string, error)
// SetSecondaries will replace the set of replicas for a repository
func (md *MemoryDatastore) SetSecondaries(primary Repository, secondaries []string) error {
- md.mu.Lock()
- md.replicas[primary.RelativePath] = shard{
+ md.replicas.Lock()
+ md.replicas.m[primary.RelativePath] = shard{
primary: primary.Storage,
secondaries: secondaries,
}
- md.mu.Unlock()
+ md.replicas.Unlock()
return nil
}
func (md *MemoryDatastore) getShard(project string) (shard, bool) {
- md.mu.RLock()
- replicas, ok := md.replicas[project]
- md.mu.RUnlock()
+ md.replicas.RLock()
+ replicas, ok := md.replicas.m[project]
+ md.replicas.RUnlock()
return replicas, ok
}
@@ -140,81 +196,118 @@ func (md *MemoryDatastore) getShard(project string) (shard, bool) {
// replicas
var ErrSecondariesMissing = errors.New("repository missing secondary replicas")
-// GetReplJobs will return any replications jobs for the specified storage
-// since the specified scheduled time up to the specified result limit.
-func (md *MemoryDatastore) GetReplJobs(storage string, since time.Time, count int) ([]ReplJob, error) {
- md.mu.RLock()
- jobs := md.storageJobs[storage]
- md.mu.RUnlock()
+// GetIncompleteJobs will return all incomplete replications jobs for the
+// specified storage to the specified result limit.
+func (md *MemoryDatastore) GetIncompleteJobs(storage string, count int) ([]ReplJob, error) {
+ md.jobs.RLock()
+ defer md.jobs.RUnlock()
var results []ReplJob
- for project, scheduled := range jobs {
- if len(results) >= count {
- break
- }
-
- if scheduled.Before(since) {
+ for i, record := range md.jobs.records {
+ if record.state == JobStateComplete ||
+ record.state == JobStateCancelled ||
+ record.state == JobStateInProgress ||
+ record.target != storage {
continue
}
- shard, ok := md.getShard(project)
- if !ok {
- return nil, ErrSecondariesMissing
+ job, err := md.replJobFromRecord(i, record)
+ if err != nil {
+ return nil, err
}
- results = append(results, ReplJob{
- Source: Repository{
- RelativePath: project,
- Storage: shard.primary,
- },
- Target: storage,
- Scheduled: scheduled,
- })
+ results = append(results, job)
+ if len(results) >= count {
+ break
+ }
}
+ sort.Sort(byJobID{results})
+
return results, nil
}
+// replJobFromRecord constructs a replication job from a record and by cross
+// referencing the current shard for the project being replicated
+func (md *MemoryDatastore) replJobFromRecord(jobID uint64, record jobRecord) (ReplJob, error) {
+ shard, ok := md.getShard(record.relativePath)
+ if !ok {
+ return ReplJob{}, fmt.Errorf(
+ "unable to find shard for project at relative path %q",
+ record.relativePath,
+ )
+ }
+
+ return ReplJob{
+ ID: jobID,
+ Source: Repository{
+ RelativePath: record.relativePath,
+ Storage: shard.primary,
+ },
+ State: record.state,
+ Target: record.target,
+ }, nil
+}
+
// ErrInvalidReplTarget indicates a target repository cannot be chosen because
// it fails preconditions for being replicatable
var ErrInvalidReplTarget = errors.New("target repository fails preconditions for replication")
-// PutReplJob will create or update an existing replication job by scheduling
-// it at the specified time
-func (md *MemoryDatastore) PutReplJob(target Repository, scheduled time.Time) error {
- md.mu.RLock()
- storageProjectJobs, ok := md.storageJobs[target.Storage]
- md.mu.RUnlock()
+// CreateSecondaryReplJobs creates a replication job for each secondary that
+// backs the specified repository. Upon success, the job IDs will be returned.
+func (md *MemoryDatastore) CreateSecondaryReplJobs(source Repository) ([]uint64, error) {
+ md.jobs.Lock()
+ defer md.jobs.Unlock()
- if !ok {
- storageProjectJobs = map[string]time.Time{}
+ emptyRepo := Repository{}
+ if source == emptyRepo {
+ return nil, errors.New("invalid source repository")
}
- // target must be a secondary replica. By definition, a secondary replica
- // must have a corresponding primary to replicate from
- shard, ok := md.getShard(target.RelativePath)
+ shard, ok := md.getShard(source.RelativePath)
if !ok {
- return ErrInvalidReplTarget
+ return nil, fmt.Errorf(
+ "unable to find shard for project at relative path %q",
+ source.RelativePath,
+ )
}
- found := false
+ var jobIDs []uint64
+
for _, secondary := range shard.secondaries {
- if secondary == target.Storage {
- found = true
- break
+ nextID := uint64(len(md.jobs.records) + 1)
+
+ md.jobs.next++
+ md.jobs.records[md.jobs.next] = jobRecord{
+ target: secondary,
+ state: JobStatePending,
+ relativePath: source.RelativePath,
}
- }
- if !found {
- return ErrInvalidReplTarget
+ jobIDs = append(jobIDs, nextID)
}
- storageProjectJobs[target.RelativePath] = scheduled
+ return jobIDs, nil
+}
+
+// UpdateReplJob updates an existing replication job's state
+func (md *MemoryDatastore) UpdateReplJob(jobID uint64, newState JobState) error {
+ md.jobs.Lock()
+ defer md.jobs.Unlock()
- md.mu.Lock()
- md.storageJobs[target.Storage] = storageProjectJobs
- md.mu.Unlock()
+ job, ok := md.jobs.records[jobID]
+ if !ok {
+ return fmt.Errorf("job ID %d does not exist", jobID)
+ }
+
+ if newState == JobStateComplete || newState == JobStateCancelled {
+ // remove the job to avoid filling up memory with unneeded job records
+ delete(md.jobs.records, jobID)
+ return nil
+ }
+ job.state = newState
+ md.jobs.records[jobID] = job
return nil
}
diff --git a/internal/praefect/datastore_memory_test.go b/internal/praefect/datastore_memory_test.go
index 6fb60cb51..fe6a06943 100644
--- a/internal/praefect/datastore_memory_test.go
+++ b/internal/praefect/datastore_memory_test.go
@@ -2,7 +2,6 @@ package praefect_test
import (
"testing"
- "time"
"github.com/stretchr/testify/require"
"gitlab.com/gitlab-org/gitaly/internal/praefect"
@@ -13,41 +12,39 @@ import (
// populate itself with the correct replication jobs and shards when initialized
// with a configuration file specifying the shard and whitelisted repositories.
func TestMemoryDatastoreWhitelist(t *testing.T) {
- var (
- immediate = time.Unix(1300000000, 0)
- cfg = config.Config{
- PrimaryServer: &config.GitalyServer{
- Name: "default",
+ cfg := config.Config{
+ PrimaryServer: &config.GitalyServer{
+ Name: "default",
+ },
+ SecondaryServers: []*config.GitalyServer{
+ {
+ Name: "backup-1",
},
- SecondaryServers: []*config.GitalyServer{
- {
- Name: "backup-1",
- },
- {
- Name: "backup-2",
- },
+ {
+ Name: "backup-2",
},
- Whitelist: []string{
- "abcd1234",
- "5678efgh",
- },
- }
- mds praefect.Datastore = praefect.NewMemoryDatastore(cfg, immediate)
+ },
+ Whitelist: []string{
+ "abcd1234",
+ "5678efgh",
+ },
+ }
+
+ mds := praefect.NewMemoryDatastore(cfg)
- repo1 = praefect.Repository{
- RelativePath: cfg.Whitelist[0],
- Storage: cfg.PrimaryServer.Name,
- }
- repo2 = praefect.Repository{
- RelativePath: cfg.Whitelist[1],
- Storage: cfg.PrimaryServer.Name,
- }
+ repo1 := praefect.Repository{
+ RelativePath: cfg.Whitelist[0],
+ Storage: cfg.PrimaryServer.Name,
+ }
+ repo2 := praefect.Repository{
+ RelativePath: cfg.Whitelist[1],
+ Storage: cfg.PrimaryServer.Name,
+ }
- expectSecondaries = []string{
- cfg.SecondaryServers[0].Name,
- cfg.SecondaryServers[1].Name,
- }
- )
+ expectSecondaries := []string{
+ cfg.SecondaryServers[0].Name,
+ cfg.SecondaryServers[1].Name,
+ }
for _, repo := range []praefect.Repository{repo1, repo2} {
actualSecondaries, err := mds.GetSecondaries(repo)
@@ -55,42 +52,44 @@ func TestMemoryDatastoreWhitelist(t *testing.T) {
require.ElementsMatch(t, actualSecondaries, expectSecondaries)
}
- var (
- backup1 = cfg.SecondaryServers[0]
- backup2 = cfg.SecondaryServers[1]
+ backup1 := cfg.SecondaryServers[0]
+ backup2 := cfg.SecondaryServers[1]
- backup1ExpectedJobs = []praefect.ReplJob{
- praefect.ReplJob{
- Target: backup1.Name,
- Source: repo1,
- Scheduled: immediate,
- },
- praefect.ReplJob{
- Target: backup1.Name,
- Source: repo2,
- Scheduled: immediate,
- },
- }
- backup2ExpectedJobs = []praefect.ReplJob{
- praefect.ReplJob{
- Target: backup2.Name,
- Source: repo1,
- Scheduled: immediate,
- },
- praefect.ReplJob{
- Target: backup2.Name,
- Source: repo2,
- Scheduled: immediate,
- },
- }
- )
+ backup1ExpectedJobs := []praefect.ReplJob{
+ praefect.ReplJob{
+ ID: 1,
+ Target: backup1.Name,
+ Source: repo1,
+ State: praefect.JobStateReady,
+ },
+ praefect.ReplJob{
+ ID: 3,
+ Target: backup1.Name,
+ Source: repo2,
+ State: praefect.JobStateReady,
+ },
+ }
+ backup2ExpectedJobs := []praefect.ReplJob{
+ praefect.ReplJob{
+ ID: 2,
+ Target: backup2.Name,
+ Source: repo1,
+ State: praefect.JobStateReady,
+ },
+ praefect.ReplJob{
+ ID: 4,
+ Target: backup2.Name,
+ Source: repo2,
+ State: praefect.JobStateReady,
+ },
+ }
- backup1ActualJobs, err := mds.GetReplJobs(backup1.Name, time.Time{}, 10)
+ backup1ActualJobs, err := mds.GetIncompleteJobs(backup1.Name, 10)
require.NoError(t, err)
- require.ElementsMatch(t, backup1ActualJobs, backup1ExpectedJobs)
+ require.Equal(t, backup1ExpectedJobs, backup1ActualJobs)
- backup2ActualJobs, err := mds.GetReplJobs(backup2.Name, time.Time{}, 10)
+ backup2ActualJobs, err := mds.GetIncompleteJobs(backup2.Name, 10)
require.NoError(t, err)
- require.ElementsMatch(t, backup2ActualJobs, backup2ExpectedJobs)
+ require.Equal(t, backup2ActualJobs, backup2ExpectedJobs)
}
diff --git a/internal/praefect/datastore_test.go b/internal/praefect/datastore_test.go
index 608d0c4c9..b41f6736b 100644
--- a/internal/praefect/datastore_test.go
+++ b/internal/praefect/datastore_test.go
@@ -2,7 +2,6 @@ package praefect_test
import (
"testing"
- "time"
"github.com/stretchr/testify/require"
"gitlab.com/gitlab-org/gitaly/internal/praefect"
@@ -16,18 +15,10 @@ const (
)
var (
- time0 = time.Time{}
- time1 = time.Unix(1, 0)
- time2 = time.Unix(2, 0)
-
repo1Primary = praefect.Repository{
RelativePath: proj1,
Storage: stor1,
}
- repo1Backup = praefect.Repository{
- RelativePath: proj1,
- Storage: stor2,
- }
)
var operations = []struct {
@@ -37,7 +28,7 @@ var operations = []struct {
{
desc: "query an empty datastore",
opFn: func(t *testing.T, ds praefect.Datastore) {
- jobs, err := ds.GetReplJobs(stor1, time1, 1)
+ jobs, err := ds.GetIncompleteJobs(stor1, 1)
require.NoError(t, err)
require.Len(t, jobs, 0)
},
@@ -45,7 +36,7 @@ var operations = []struct {
{
desc: "insert first replication job before secondary mapped to primary",
opFn: func(t *testing.T, ds praefect.Datastore) {
- err := ds.PutReplJob(repo1Backup, time2)
+ _, err := ds.CreateSecondaryReplJobs(repo1Primary)
require.Error(t, err, praefect.ErrInvalidReplTarget)
},
},
@@ -59,37 +50,38 @@ var operations = []struct {
{
desc: "insert first replication job after secondary mapped to primary",
opFn: func(t *testing.T, ds praefect.Datastore) {
- err := ds.PutReplJob(repo1Backup, time2)
+ ids, err := ds.CreateSecondaryReplJobs(repo1Primary)
require.NoError(t, err)
+ require.Equal(t, []uint64{1}, ids)
},
},
{
- desc: "fetch inserted replication job after primary mapped",
+ desc: "fetch inserted replication jobs after primary mapped",
opFn: func(t *testing.T, ds praefect.Datastore) {
- jobs, err := ds.GetReplJobs(stor2, time1, 10)
-
+ jobs, err := ds.GetIncompleteJobs(stor2, 10)
require.NoError(t, err)
require.Len(t, jobs, 1)
expectedJob := praefect.ReplJob{
- Source: repo1Primary,
- Target: stor2,
- Scheduled: time2,
+ ID: 1,
+ Source: repo1Primary,
+ Target: stor2,
+ State: praefect.JobStatePending,
}
- require.Equal(t, jobs[0], expectedJob)
+ require.Equal(t, expectedJob, jobs[0])
},
},
{
desc: "mark replication job done",
opFn: func(t *testing.T, ds praefect.Datastore) {
- err := ds.PutReplJob(repo1Backup, time0)
+ err := ds.UpdateReplJob(1, praefect.JobStateComplete)
require.NoError(t, err)
},
},
{
desc: "try fetching completed replication job",
opFn: func(t *testing.T, ds praefect.Datastore) {
- jobs, err := ds.GetReplJobs(stor1, time1, 1)
+ jobs, err := ds.GetIncompleteJobs(stor1, 1)
require.NoError(t, err)
require.Len(t, jobs, 0)
},
@@ -98,7 +90,7 @@ var operations = []struct {
// TODO: add SQL datastore flavor
var flavors = map[string]func() praefect.Datastore{
- "in-memory-datastore": func() praefect.Datastore { return praefect.NewMemoryDatastore(config.Config{}, time.Now()) },
+ "in-memory-datastore": func() praefect.Datastore { return praefect.NewMemoryDatastore(config.Config{}) },
}
// TestDatastoreInterface will verify that every implementation or "flavor" of
diff --git a/internal/praefect/mock/mock.proto b/internal/praefect/mock/mock.proto
index 81d640058..aa6ec842a 100644
--- a/internal/praefect/mock/mock.proto
+++ b/internal/praefect/mock/mock.proto
@@ -16,6 +16,8 @@ message SimpleResponse {
service SimpleService {
// SimpleUnaryUnary is a simple unary request with unary response
- rpc SimpleUnaryUnary(SimpleRequest) returns (SimpleResponse) {}
+ rpc SimpleUnaryUnary(SimpleRequest) returns (SimpleResponse) {
+ option (gitaly.op_type).op = ACCESSOR;
+ }
}
diff --git a/internal/praefect/protoregistry/protoregistry.go b/internal/praefect/protoregistry/protoregistry.go
new file mode 100644
index 000000000..c02f25432
--- /dev/null
+++ b/internal/praefect/protoregistry/protoregistry.go
@@ -0,0 +1,146 @@
+package protoregistry
+
+import (
+ "bytes"
+ "compress/gzip"
+ "fmt"
+ "io/ioutil"
+ "sync"
+
+ "github.com/golang/protobuf/proto"
+ "github.com/golang/protobuf/protoc-gen-go/descriptor"
+ "github.com/sirupsen/logrus"
+ "gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
+)
+
+// GitalyProtoFileDescriptors is a slice of all gitaly registered file descriptors
+var GitalyProtoFileDescriptors []*descriptor.FileDescriptorProto
+
+func init() {
+ for _, protoName := range gitalypb.GitalyProtos {
+ gz := proto.FileDescriptor(protoName)
+ fd, err := extractFile(gz)
+ if err != nil {
+ panic(err)
+ }
+
+ GitalyProtoFileDescriptors = append(GitalyProtoFileDescriptors, fd)
+ }
+}
+
+// OpType represents the operation type for a RPC method
+type OpType int
+
+const (
+ // OpUnknown = unknown operation type
+ OpUnknown = iota
+ // OpAccessor = accessor operation type (ready only)
+ OpAccessor
+ // OpMutator = mutator operation type (modifies a repository)
+ OpMutator
+)
+
+// MethodInfo contains metadata about the RPC method
+type MethodInfo struct {
+ Operation OpType
+}
+
+// Registry contains info about RPC methods
+type Registry struct {
+ sync.RWMutex
+ protos map[string]map[string]MethodInfo
+}
+
+// New creates a new ProtoRegistry
+func New() *Registry {
+ return &Registry{
+ protos: make(map[string]map[string]MethodInfo),
+ }
+}
+
+// RegisterFiles takes one or more descriptor.FileDescriptorProto and populates the registry with its info
+func (pr *Registry) RegisterFiles(protos ...*descriptor.FileDescriptorProto) error {
+ pr.Lock()
+ defer pr.Unlock()
+ for _, p := range protos {
+ for _, serviceDescriptorProto := range p.GetService() {
+ for _, methodDescriptorProto := range serviceDescriptorProto.GetMethod() {
+ var mi MethodInfo
+
+ options := methodDescriptorProto.GetOptions()
+
+ methodDescriptorProto.GetInputType()
+
+ if !proto.HasExtension(options, gitalypb.E_OpType) {
+ logrus.WithField("service", serviceDescriptorProto.GetName()).
+ WithField("method", serviceDescriptorProto.GetName()).
+ Warn("grpc method missing op_type")
+ continue
+ }
+
+ ext, err := proto.GetExtension(options, gitalypb.E_OpType)
+ if err != nil {
+ return err
+ }
+
+ opMsg, ok := ext.(*gitalypb.OperationMsg)
+ if !ok {
+ return fmt.Errorf("unable to obtain OperationMsg from %#v", ext)
+ }
+
+ switch opCode := opMsg.GetOp(); opCode {
+ case gitalypb.OperationMsg_ACCESSOR:
+ mi.Operation = OpAccessor
+ case gitalypb.OperationMsg_MUTATOR:
+ mi.Operation = OpMutator
+ default:
+ mi.Operation = OpUnknown
+ }
+
+ if _, ok := pr.protos[serviceDescriptorProto.GetName()]; !ok {
+ pr.protos[serviceDescriptorProto.GetName()] = make(map[string]MethodInfo)
+ }
+ pr.protos[serviceDescriptorProto.GetName()][methodDescriptorProto.GetName()] = mi
+ }
+ }
+ }
+
+ return nil
+}
+
+// LookupMethod looks up an MethodInfo by service and method name
+func (pr *Registry) LookupMethod(service, method string) (MethodInfo, error) {
+ pr.RLock()
+ defer pr.RUnlock()
+
+ if _, ok := pr.protos[service]; !ok {
+ return MethodInfo{}, fmt.Errorf("service not found: %v", service)
+ }
+ methodInfo, ok := pr.protos[service][method]
+ if !ok {
+ return MethodInfo{}, fmt.Errorf("method not found: %v", method)
+ }
+ return methodInfo, nil
+}
+
+// extractFile extracts a FileDescriptorProto from a gzip'd buffer.
+// https://github.com/golang/protobuf/blob/9eb2c01ac278a5d89ce4b2be68fe4500955d8179/descriptor/descriptor.go#L50
+func extractFile(gz []byte) (*descriptor.FileDescriptorProto, error) {
+ r, err := gzip.NewReader(bytes.NewReader(gz))
+ if err != nil {
+ return nil, fmt.Errorf("failed to open gzip reader: %v", err)
+ }
+ defer r.Close()
+
+ b, err := ioutil.ReadAll(r)
+ if err != nil {
+ return nil, fmt.Errorf("failed to uncompress descriptor: %v", err)
+ }
+
+ fd := new(descriptor.FileDescriptorProto)
+ if err := proto.Unmarshal(b, fd); err != nil {
+ return nil, fmt.Errorf("malformed FileDescriptorProto: %v", err)
+ }
+
+ return fd, nil
+}
diff --git a/internal/praefect/protoregistry/protoregistry_test.go b/internal/praefect/protoregistry/protoregistry_test.go
new file mode 100644
index 000000000..56cffe255
--- /dev/null
+++ b/internal/praefect/protoregistry/protoregistry_test.go
@@ -0,0 +1,195 @@
+package protoregistry_test
+
+import (
+ "testing"
+
+ "github.com/stretchr/testify/assert"
+ "github.com/stretchr/testify/require"
+ "gitlab.com/gitlab-org/gitaly/internal/praefect/protoregistry"
+)
+
+func TestPopulatesProtoRegistry(t *testing.T) {
+ r := protoregistry.New()
+ require.NoError(t, r.RegisterFiles(protoregistry.GitalyProtoFileDescriptors...))
+
+ expectedResults := map[string]map[string]protoregistry.OpType{
+ "BlobService": map[string]protoregistry.OpType{
+ "GetBlob": protoregistry.OpAccessor,
+ "GetBlobs": protoregistry.OpAccessor,
+ "GetLFSPointers": protoregistry.OpAccessor,
+ "GetNewLFSPointers": protoregistry.OpAccessor,
+ "GetAllLFSPointers": protoregistry.OpAccessor,
+ },
+ "CleanupService": map[string]protoregistry.OpType{
+ "ApplyBfgObjectMap": protoregistry.OpMutator,
+ },
+ "CommitService": map[string]protoregistry.OpType{
+ "CommitIsAncestor": protoregistry.OpAccessor,
+ "TreeEntry": protoregistry.OpAccessor,
+ "CommitsBetween": protoregistry.OpAccessor,
+ "CountCommits": protoregistry.OpAccessor,
+ "CountDivergingCommits": protoregistry.OpAccessor,
+ "GetTreeEntries": protoregistry.OpAccessor,
+ "ListFiles": protoregistry.OpAccessor,
+ "FindCommit": protoregistry.OpAccessor,
+ "CommitStats": protoregistry.OpAccessor,
+ "FindAllCommits": protoregistry.OpAccessor,
+ "FindCommits": protoregistry.OpAccessor,
+ "CommitLanguages": protoregistry.OpAccessor,
+ "RawBlame": protoregistry.OpAccessor,
+ "LastCommitForPath": protoregistry.OpAccessor,
+ "ListLastCommitsForTree": protoregistry.OpAccessor,
+ "CommitsByMessage": protoregistry.OpAccessor,
+ "ListCommitsByOid": protoregistry.OpAccessor,
+ "FilterShasWithSignatures": protoregistry.OpAccessor,
+ },
+ "ConflictsService": map[string]protoregistry.OpType{
+ "ListConflictFiles": protoregistry.OpAccessor,
+ "ResolveConflicts": protoregistry.OpMutator,
+ },
+ "DiffService": map[string]protoregistry.OpType{
+ "CommitDiff": protoregistry.OpAccessor,
+ "CommitDelta": protoregistry.OpAccessor,
+ "CommitPatch": protoregistry.OpAccessor,
+ "RawDiff": protoregistry.OpAccessor,
+ "RawPatch": protoregistry.OpAccessor,
+ "DiffStats": protoregistry.OpAccessor,
+ },
+ "NamespaceService": map[string]protoregistry.OpType{
+ "AddNamespace": protoregistry.OpMutator,
+ "RemoveNamespace": protoregistry.OpMutator,
+ "RenameNamespace": protoregistry.OpMutator,
+ "NamespaceExists": protoregistry.OpAccessor,
+ },
+ "ObjectPoolService": map[string]protoregistry.OpType{
+ "CreateObjectPool": protoregistry.OpMutator,
+ "DeleteObjectPool": protoregistry.OpMutator,
+ "LinkRepositoryToObjectPool": protoregistry.OpMutator,
+ "UnlinkRepositoryFromObjectPool": protoregistry.OpMutator,
+ "ReduplicateRepository": protoregistry.OpMutator,
+ "DisconnectGitAlternates": protoregistry.OpMutator,
+ },
+ "OperationService": map[string]protoregistry.OpType{
+ "UserCreateBranch": protoregistry.OpMutator,
+ "UserUpdateBranch": protoregistry.OpMutator,
+ "UserDeleteBranch": protoregistry.OpMutator,
+ "UserCreateTag": protoregistry.OpMutator,
+ "UserDeleteTag": protoregistry.OpMutator,
+ "UserMergeToRef": protoregistry.OpMutator,
+ "UserMergeBranch": protoregistry.OpMutator,
+ "UserFFBranch": protoregistry.OpMutator,
+ "UserCherryPick": protoregistry.OpMutator,
+ "UserCommitFiles": protoregistry.OpMutator,
+ "UserRebase": protoregistry.OpMutator,
+ "UserRevert": protoregistry.OpMutator,
+ "UserSquash": protoregistry.OpMutator,
+ "UserApplyPatch": protoregistry.OpMutator,
+ "UserUpdateSubmodule": protoregistry.OpMutator,
+ },
+ "RefService": map[string]protoregistry.OpType{
+ "FindDefaultBranchName": protoregistry.OpAccessor,
+ "FindAllBranchNames": protoregistry.OpAccessor,
+ "FindAllTagNames": protoregistry.OpAccessor,
+ "FindRefName": protoregistry.OpAccessor,
+ "FindLocalBranches": protoregistry.OpAccessor,
+ "FindAllBranches": protoregistry.OpAccessor,
+ "FindAllTags": protoregistry.OpAccessor,
+ "FindAllRemoteBranches": protoregistry.OpAccessor,
+ "RefExists": protoregistry.OpAccessor,
+ "CreateBranch": protoregistry.OpMutator,
+ "DeleteBranch": protoregistry.OpMutator,
+ "FindBranch": protoregistry.OpAccessor,
+ "DeleteRefs": protoregistry.OpMutator,
+ "ListBranchNamesContainingCommit": protoregistry.OpAccessor,
+ "ListTagNamesContainingCommit": protoregistry.OpAccessor,
+ "GetTagMessages": protoregistry.OpAccessor,
+ "ListNewCommits": protoregistry.OpAccessor,
+ "ListNewBlobs": protoregistry.OpAccessor,
+ "PackRefs": protoregistry.OpMutator,
+ },
+ "RemoteService": map[string]protoregistry.OpType{
+ "AddRemote": protoregistry.OpMutator,
+ "FetchInternalRemote": protoregistry.OpMutator,
+ "RemoveRemote": protoregistry.OpMutator,
+ "UpdateRemoteMirror": protoregistry.OpMutator,
+ "FindRemoteRepository": protoregistry.OpAccessor,
+ "FindRemoteRootRef": protoregistry.OpAccessor,
+ "ListRemotes": protoregistry.OpAccessor,
+ },
+ "RepositoryService": map[string]protoregistry.OpType{
+ "RepositoryExists": protoregistry.OpAccessor,
+ "RepackIncremental": protoregistry.OpMutator,
+ "RepackFull": protoregistry.OpMutator,
+ "GarbageCollect": protoregistry.OpMutator,
+ "RepositorySize": protoregistry.OpMutator,
+ "ApplyGitattributes": protoregistry.OpMutator,
+ "FetchRemote": protoregistry.OpMutator,
+ "CreateRepository": protoregistry.OpMutator,
+ "GetArchive": protoregistry.OpMutator,
+ "HasLocalBranches": protoregistry.OpAccessor,
+ "FetchSourceBranch": protoregistry.OpMutator,
+ "Fsck": protoregistry.OpMutator,
+ "WriteRef": protoregistry.OpMutator,
+ "FindMergeBase": protoregistry.OpAccessor,
+ "CreateFork": protoregistry.OpMutator,
+ "IsRebaseInProgress": protoregistry.OpAccessor,
+ "IsSquashInProgress": protoregistry.OpAccessor,
+ "CreateRepositoryFromURL": protoregistry.OpMutator,
+ "CreateBundle": protoregistry.OpMutator,
+ "CreateRepositoryFromBundle": protoregistry.OpMutator,
+ "WriteConfig": protoregistry.OpMutator,
+ "SetConfig": protoregistry.OpMutator,
+ "DeleteConfig": protoregistry.OpMutator,
+ "FindLicense": protoregistry.OpAccessor,
+ "GetInfoAttributes": protoregistry.OpAccessor,
+ "CalculateChecksum": protoregistry.OpAccessor,
+ "Cleanup": protoregistry.OpMutator,
+ "GetSnapshot": protoregistry.OpAccessor,
+ "CreateRepositoryFromSnapshot": protoregistry.OpMutator,
+ "GetRawChanges": protoregistry.OpAccessor,
+ "SearchFilesByContent": protoregistry.OpAccessor,
+ "SearchFilesByName": protoregistry.OpAccessor,
+ "RestoreCustomHooks": protoregistry.OpMutator,
+ "BackupCustomHooks": protoregistry.OpAccessor,
+ "PreFetch": protoregistry.OpMutator,
+ "FetchHTTPRemote": protoregistry.OpMutator,
+ },
+ "ServerService": map[string]protoregistry.OpType{
+ "ServerInfo": protoregistry.OpAccessor,
+ },
+ "SmartHTTPService": map[string]protoregistry.OpType{
+ "InfoRefsUploadPack": protoregistry.OpAccessor,
+ "InfoRefsReceivePack": protoregistry.OpMutator,
+ "PostUploadPack": protoregistry.OpAccessor,
+ "PostReceivePack": protoregistry.OpMutator,
+ },
+ "SSHService": map[string]protoregistry.OpType{
+ "SSHUploadPack": protoregistry.OpAccessor,
+ "SSHReceivePack": protoregistry.OpMutator,
+ "SSHUploadArchive": protoregistry.OpMutator,
+ },
+ "StorageService": map[string]protoregistry.OpType{
+ "ListDirectories": protoregistry.OpMutator,
+ "DeleteAllRepositories": protoregistry.OpMutator,
+ },
+ "WikiService": map[string]protoregistry.OpType{
+ "WikiGetPageVersions": protoregistry.OpAccessor,
+ "WikiWritePage": protoregistry.OpMutator,
+ "WikiUpdatePage": protoregistry.OpMutator,
+ "WikiDeletePage": protoregistry.OpMutator,
+ "WikiFindPage": protoregistry.OpAccessor,
+ "WikiFindFile": protoregistry.OpAccessor,
+ "WikiGetAllPages": protoregistry.OpAccessor,
+ "WikiListPages": protoregistry.OpAccessor,
+ "WikiGetFormattedData": protoregistry.OpAccessor,
+ },
+ }
+
+ for serviceName, methods := range expectedResults {
+ for methodName, opType := range methods {
+ methodInfo, err := r.LookupMethod(serviceName, methodName)
+ require.NoError(t, err)
+ assert.Equalf(t, opType, methodInfo.Operation, "expect %s:%s to have the correct op type", serviceName, methodName)
+ }
+ }
+}
diff --git a/internal/praefect/replicator.go b/internal/praefect/replicator.go
index 91871c759..723726567 100644
--- a/internal/praefect/replicator.go
+++ b/internal/praefect/replicator.go
@@ -82,24 +82,42 @@ func (r ReplMgr) ScheduleReplication(ctx context.Context, repo Repository) error
return nil
}
- return r.jobsStore.PutReplJob(repo, time.Now())
+ id, err := r.jobsStore.CreateSecondaryReplJobs(repo)
+ if err != nil {
+ return err
+ }
+
+ r.log.Infof(
+ "replication manager for storage %q created replication job with ID %d",
+ r.storage,
+ id,
+ )
+
+ return nil
}
+const (
+ jobFetchInterval = 10 * time.Millisecond
+ logWithReplJobID = "replication-job-ID"
+)
+
// ProcessBacklog will process queued jobs. It will block while processing jobs.
func (r ReplMgr) ProcessBacklog(ctx context.Context) error {
since := time.Time{}
for {
r.log.Debugf("fetching replication jobs since %s", since)
- jobs, err := r.jobsStore.GetReplJobs(r.storage, since, 10)
+ jobs, err := r.jobsStore.GetIncompleteJobs(r.storage, 10)
if err != nil {
return err
}
if len(jobs) == 0 {
+ r.log.Debugf("no jobs for %s, checking again in %s", r.storage, jobFetchInterval)
+
select {
// TODO: exponential backoff when no queries are returned
- case <-time.After(10 * time.Millisecond):
+ case <-time.After(jobFetchInterval):
continue
case <-ctx.Done():
@@ -111,18 +129,26 @@ func (r ReplMgr) ProcessBacklog(ctx context.Context) error {
r.log.Debugf("fetched replication jobs: %#v", jobs)
for _, job := range jobs {
- r.log.Infof("processing replication job %#v", job)
+ r.log.WithField(logWithReplJobID, job.ID).
+ Infof("processing replication job %#v", job)
node, err := r.coordinator.GetStorageNode(job.Target)
if err != nil {
return err
}
- err = r.replicator.Replicate(ctx, job.Source, node)
- if err != nil {
+ if err := r.jobsStore.UpdateReplJob(job.ID, JobStateInProgress); err != nil {
+ return err
+ }
+
+ if err := r.replicator.Replicate(ctx, job.Source, node); err != nil {
return err
}
- since = job.Scheduled
+ r.log.WithField(logWithReplJobID, job.ID).
+ Info("completed replication")
+ if err := r.jobsStore.UpdateReplJob(job.ID, JobStateComplete); err != nil {
+ return err
+ }
}
}
}
diff --git a/internal/praefect/replicator_test.go b/internal/praefect/replicator_test.go
index 8e156f0c4..1f1955e81 100644
--- a/internal/praefect/replicator_test.go
+++ b/internal/praefect/replicator_test.go
@@ -38,7 +38,7 @@ func TestReplicatorProcessJobsWhitelist(t *testing.T) {
"edfg5678",
},
}
- datastore = praefect.NewMemoryDatastore(cfg, time.Now())
+ datastore = praefect.NewMemoryDatastore(cfg)
coordinator = praefect.NewCoordinator(logrus.New(), cfg.PrimaryServer.Name)
resultsCh = make(chan result)
replman = praefect.NewReplMgr(
@@ -69,29 +69,22 @@ func TestReplicatorProcessJobsWhitelist(t *testing.T) {
}()
success := make(chan struct{})
- expectJobs := len(cfg.Whitelist) * len(cfg.SecondaryServers)
go func() {
// we expect one job per whitelisted repo with each backend server
- for i := 0; i < expectJobs; i++ {
+ for i := 0; i < len(cfg.Whitelist); i++ {
result := <-resultsCh
assert.Contains(t, cfg.Whitelist, result.source.RelativePath)
- assert.Contains(t,
- []string{
- cfg.SecondaryServers[0].Name,
- cfg.SecondaryServers[1].Name,
- },
- result.target.Storage,
- )
+ assert.Equal(t, result.target.Storage, cfg.SecondaryServers[1].Name)
+ assert.Equal(t, result.source.Storage, cfg.PrimaryServer.Name)
}
cancel()
+ require.EqualError(t, <-errQ, context.Canceled.Error())
success <- struct{}{}
}()
- require.EqualError(t, <-errQ, context.Canceled.Error())
-
select {
case <-success:
diff --git a/internal/praefect/server_test.go b/internal/praefect/server_test.go
index 94f5dd289..5b9456206 100644
--- a/internal/praefect/server_test.go
+++ b/internal/praefect/server_test.go
@@ -51,7 +51,7 @@ func TestServerSimpleUnaryUnary(t *testing.T) {
)
coordinator := praefect.NewCoordinator(logrus.New(), storagePrimary)
- datastore := praefect.NewMemoryDatastore(config.Config{}, time.Now())
+ datastore := praefect.NewMemoryDatastore(config.Config{})
replmgr := praefect.NewReplMgr(
storagePrimary,
logrus.New(),
diff --git a/internal/rubyserver/rubyserver.go b/internal/rubyserver/rubyserver.go
index 615444287..3b75b665e 100644
--- a/internal/rubyserver/rubyserver.go
+++ b/internal/rubyserver/rubyserver.go
@@ -120,6 +120,10 @@ func Start() (*Server, error) {
env = append(env, "SENTRY_DSN="+dsn)
}
+ if sentryEnvironment := cfg.Logging.SentryEnvironment; sentryEnvironment != "" {
+ env = append(env, "SENTRY_ENVIRONMENT="+sentryEnvironment)
+ }
+
gitalyRuby := path.Join(cfg.Ruby.Dir, "bin/gitaly-ruby")
numWorkers := cfg.Ruby.NumWorkers
diff --git a/internal/service/cleanup/apply_bfg_object_map.go b/internal/service/cleanup/apply_bfg_object_map.go
index 57f431353..37093e40e 100644
--- a/internal/service/cleanup/apply_bfg_object_map.go
+++ b/internal/service/cleanup/apply_bfg_object_map.go
@@ -35,7 +35,7 @@ func (s *server) ApplyBfgObjectMap(stream gitalypb.CleanupService_ApplyBfgObject
// It doesn't matter if new internal references are added after this RPC
// starts running - they shouldn't point to the objects removed by the BFG
- cleaner, err := internalrefs.NewCleaner(ctx, repo)
+ cleaner, err := internalrefs.NewCleaner(ctx, repo, nil)
if err != nil {
return status.Errorf(codes.Internal, err.Error())
}
diff --git a/internal/service/cleanup/apply_bfg_object_map_stream.go b/internal/service/cleanup/apply_bfg_object_map_stream.go
new file mode 100644
index 000000000..594a509a0
--- /dev/null
+++ b/internal/service/cleanup/apply_bfg_object_map_stream.go
@@ -0,0 +1,108 @@
+package cleanup
+
+import (
+ "fmt"
+ "io"
+
+ "gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
+
+ "gitlab.com/gitlab-org/gitaly/internal/helper"
+ "gitlab.com/gitlab-org/gitaly/internal/helper/chunk"
+ "gitlab.com/gitlab-org/gitaly/internal/service/cleanup/internalrefs"
+ "gitlab.com/gitlab-org/gitaly/internal/service/cleanup/notifier"
+ "gitlab.com/gitlab-org/gitaly/streamio"
+)
+
+type bfgStreamReader struct {
+ firstRequest *gitalypb.ApplyBfgObjectMapStreamRequest
+
+ server gitalypb.CleanupService_ApplyBfgObjectMapStreamServer
+}
+
+type bfgStreamWriter struct {
+ entries []*gitalypb.ApplyBfgObjectMapStreamResponse_Entry
+
+ server gitalypb.CleanupService_ApplyBfgObjectMapStreamServer
+}
+
+func (s *server) ApplyBfgObjectMapStream(server gitalypb.CleanupService_ApplyBfgObjectMapStreamServer) error {
+ firstRequest, err := server.Recv()
+ if err != nil {
+ return helper.ErrInternal(err)
+ }
+
+ if err := validateFirstRequest(firstRequest); err != nil {
+ return helper.ErrInvalidArgument(err)
+ }
+
+ ctx := server.Context()
+ repo := firstRequest.GetRepository()
+ reader := &bfgStreamReader{firstRequest: firstRequest, server: server}
+ chunker := chunk.New(&bfgStreamWriter{server: server})
+
+ notifier, err := notifier.New(ctx, repo, chunker)
+ if err != nil {
+ return helper.ErrInternal(err)
+ }
+
+ // It doesn't matter if new internal references are added after this RPC
+ // starts running - they shouldn't point to the objects removed by the BFG
+ cleaner, err := internalrefs.NewCleaner(ctx, repo, notifier.Notify)
+ if err != nil {
+ return helper.ErrInternal(err)
+ }
+
+ if err := cleaner.ApplyObjectMap(reader.streamReader()); err != nil {
+ if invalidErr, ok := err.(internalrefs.ErrInvalidObjectMap); ok {
+ return helper.ErrInvalidArgument(invalidErr)
+ }
+
+ return helper.ErrInternal(err)
+ }
+
+ return helper.ErrInternal(chunker.Flush())
+}
+
+func validateFirstRequest(req *gitalypb.ApplyBfgObjectMapStreamRequest) error {
+ if repo := req.GetRepository(); repo == nil {
+ return fmt.Errorf("first request: repository not set")
+ }
+
+ return nil
+}
+
+func (r *bfgStreamReader) readOne() ([]byte, error) {
+ if r.firstRequest != nil {
+ data := r.firstRequest.GetObjectMap()
+ r.firstRequest = nil
+ return data, nil
+ }
+
+ req, err := r.server.Recv()
+ if err != nil {
+ return nil, err
+ }
+
+ return req.GetObjectMap(), nil
+}
+
+func (r *bfgStreamReader) streamReader() io.Reader {
+ return streamio.NewReader(r.readOne)
+}
+
+func (w *bfgStreamWriter) Append(it chunk.Item) {
+ w.entries = append(
+ w.entries,
+ it.(*gitalypb.ApplyBfgObjectMapStreamResponse_Entry),
+ )
+}
+
+func (w *bfgStreamWriter) Reset() {
+ w.entries = nil
+}
+
+func (w *bfgStreamWriter) Send() error {
+ msg := &gitalypb.ApplyBfgObjectMapStreamResponse{Entries: w.entries}
+
+ return w.server.Send(msg)
+}
diff --git a/internal/service/cleanup/apply_bfg_object_map_stream_test.go b/internal/service/cleanup/apply_bfg_object_map_stream_test.go
new file mode 100644
index 000000000..e4c916330
--- /dev/null
+++ b/internal/service/cleanup/apply_bfg_object_map_stream_test.go
@@ -0,0 +1,133 @@
+package cleanup
+
+import (
+ "context"
+ "fmt"
+ "io"
+ "strings"
+ "testing"
+
+ "github.com/stretchr/testify/assert"
+ "github.com/stretchr/testify/require"
+ "gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
+ "google.golang.org/grpc/codes"
+
+ "gitlab.com/gitlab-org/gitaly/internal/git"
+ "gitlab.com/gitlab-org/gitaly/internal/git/log"
+ "gitlab.com/gitlab-org/gitaly/internal/testhelper"
+)
+
+func TestApplyBfgObjectMapStreamSuccess(t *testing.T) {
+ server, serverSocketPath := runCleanupServiceServer(t)
+ defer server.Stop()
+
+ client, conn := newCleanupServiceClient(t, serverSocketPath)
+ defer conn.Close()
+
+ testRepo, testRepoPath, cleanupFn := testhelper.NewTestRepo(t)
+ defer cleanupFn()
+
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ headCommit, err := log.GetCommit(ctx, testRepo, "HEAD")
+ require.NoError(t, err)
+
+ // A known blob: the CHANGELOG in the test repository
+ blobID := "53855584db773c3df5b5f61f72974cb298822fbb"
+
+ // A known tag: v1.0.0
+ tagID := "f4e6814c3e4e7a0de82a9e7cd20c626cc963a2f8"
+
+ // Create some refs pointing to HEAD
+ for _, ref := range []string{
+ "refs/environments/1", "refs/keep-around/1", "refs/merge-requests/1",
+ "refs/heads/_keep", "refs/tags/_keep", "refs/notes/_keep",
+ } {
+ testhelper.MustRunCommand(t, nil, "git", "-C", testRepoPath, "update-ref", ref, headCommit.Id)
+ }
+
+ objectMapData := fmt.Sprintf(
+ strings.Repeat("%s %s\n", 4),
+ headCommit.Id, headCommit.Id,
+ git.NullSHA, blobID,
+ git.NullSHA, tagID,
+ git.NullSHA, git.NullSHA,
+ )
+
+ entries, err := doStreamingRequest(ctx, t, testRepo, client, objectMapData)
+ require.NoError(t, err)
+
+ // Ensure that the internal refs are gone, but the others still exist
+ refs := testhelper.GetRepositoryRefs(t, testRepoPath)
+ assert.NotContains(t, refs, "refs/environments/1")
+ assert.NotContains(t, refs, "refs/keep-around/1")
+ assert.NotContains(t, refs, "refs/merge-requests/1")
+ assert.Contains(t, refs, "refs/heads/_keep")
+ assert.Contains(t, refs, "refs/tags/_keep")
+ assert.Contains(t, refs, "refs/notes/_keep")
+
+ // Ensure that the returned entry is correct
+ require.Len(t, entries, 4, "wrong number of entries returned")
+ requireEntry(t, entries[0], headCommit.Id, headCommit.Id, gitalypb.ObjectType_COMMIT)
+ requireEntry(t, entries[1], git.NullSHA, blobID, gitalypb.ObjectType_BLOB)
+ requireEntry(t, entries[2], git.NullSHA, tagID, gitalypb.ObjectType_TAG)
+ requireEntry(t, entries[3], git.NullSHA, git.NullSHA, gitalypb.ObjectType_UNKNOWN)
+}
+
+func requireEntry(t *testing.T, entry *gitalypb.ApplyBfgObjectMapStreamResponse_Entry, oldOid, newOid string, objectType gitalypb.ObjectType) {
+ require.Equal(t, objectType, entry.Type)
+ require.Equal(t, oldOid, entry.OldOid)
+ require.Equal(t, newOid, entry.NewOid)
+}
+
+func TestApplyBfgObjectMapStreamFailsOnInvalidInput(t *testing.T) {
+ server, serverSocketPath := runCleanupServiceServer(t)
+ defer server.Stop()
+
+ client, conn := newCleanupServiceClient(t, serverSocketPath)
+ defer conn.Close()
+
+ testRepo, _, cleanupFn := testhelper.NewTestRepo(t)
+ defer cleanupFn()
+
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ entries, err := doStreamingRequest(ctx, t, testRepo, client, "invalid-data here as you can see")
+ require.Empty(t, entries)
+ testhelper.RequireGrpcError(t, err, codes.InvalidArgument)
+}
+
+func doStreamingRequest(ctx context.Context, t *testing.T, repo *gitalypb.Repository, client gitalypb.CleanupServiceClient, objectMap string) ([]*gitalypb.ApplyBfgObjectMapStreamResponse_Entry, error) {
+ // Split the data across multiple requests
+ parts := strings.SplitN(objectMap, " ", 2)
+ req1 := &gitalypb.ApplyBfgObjectMapStreamRequest{
+ Repository: repo,
+ ObjectMap: []byte(parts[0] + " "),
+ }
+ req2 := &gitalypb.ApplyBfgObjectMapStreamRequest{ObjectMap: []byte(parts[1])}
+
+ server, err := client.ApplyBfgObjectMapStream(ctx)
+ require.NoError(t, err)
+ require.NoError(t, server.Send(req1))
+ require.NoError(t, server.Send(req2))
+ require.NoError(t, server.CloseSend())
+
+ // receive all responses in a loop
+ var entries []*gitalypb.ApplyBfgObjectMapStreamResponse_Entry
+ for {
+ rsp, err := server.Recv()
+ if rsp != nil {
+ entries = append(entries, rsp.GetEntries()...)
+ }
+ if err == io.EOF {
+ break
+ }
+ if err != nil {
+ return nil, err
+ }
+ }
+
+ return entries, nil
+}
diff --git a/internal/service/cleanup/apply_bfg_object_map_test.go b/internal/service/cleanup/apply_bfg_object_map_test.go
index 587a26cc7..9d1e087ff 100644
--- a/internal/service/cleanup/apply_bfg_object_map_test.go
+++ b/internal/service/cleanup/apply_bfg_object_map_test.go
@@ -52,7 +52,7 @@ func TestApplyBfgObjectMapSuccess(t *testing.T) {
assert.Contains(t, refs, "refs/notes/_keep")
}
-func TestFailsOnInvalidInput(t *testing.T) {
+func TestApplyBfgObjectMapFailsOnInvalidInput(t *testing.T) {
server, serverSocketPath := runCleanupServiceServer(t)
defer server.Stop()
diff --git a/internal/service/cleanup/internalrefs/cleaner.go b/internal/service/cleanup/internalrefs/cleaner.go
index e5fe152a9..80943d7cb 100644
--- a/internal/service/cleanup/internalrefs/cleaner.go
+++ b/internal/service/cleanup/internalrefs/cleaner.go
@@ -22,11 +22,17 @@ var internalRefs = []string{
"refs/merge-requests/",
}
+// A ForEachFunc can be called for every entry in the BFG object map file that
+// the cleaner is processing. Returning an error will stop the cleaner before
+// it has processed the entry in question
+type ForEachFunc func(oldOID, newOID string, isInternalRef bool) error
+
// Cleaner is responsible for updating the internal references in a repository
// as specified by a BFG object map. Currently, internal references pointing to
// a commit that has been rewritten will simply be removed.
type Cleaner struct {
- ctx context.Context
+ ctx context.Context
+ forEach ForEachFunc
// Map of SHA -> reference names
table map[string][]string
@@ -39,7 +45,7 @@ type ErrInvalidObjectMap error
// NewCleaner builds a new instance of Cleaner, which is used to apply a BFG
// object map to a repository.
-func NewCleaner(ctx context.Context, repo *gitalypb.Repository) (*Cleaner, error) {
+func NewCleaner(ctx context.Context, repo *gitalypb.Repository, forEach ForEachFunc) (*Cleaner, error) {
table, err := buildLookupTable(ctx, repo)
if err != nil {
return nil, err
@@ -50,7 +56,7 @@ func NewCleaner(ctx context.Context, repo *gitalypb.Repository) (*Cleaner, error
return nil, err
}
- return &Cleaner{ctx: ctx, table: table, updater: updater}, nil
+ return &Cleaner{ctx: ctx, table: table, updater: updater, forEach: forEach}, nil
}
// ApplyObjectMap processes a BFG object map file, removing any internal
@@ -70,7 +76,7 @@ func (c *Cleaner) ApplyObjectMap(reader io.Reader) error {
return ErrInvalidObjectMap(fmt.Errorf("object map invalid at line %d", i))
}
- if err := c.removeRefsFor(shas[0]); err != nil {
+ if err := c.processEntry(shas[0], shas[1]); err != nil {
return err
}
}
@@ -78,14 +84,21 @@ func (c *Cleaner) ApplyObjectMap(reader io.Reader) error {
return c.updater.Wait()
}
-func (c *Cleaner) removeRefsFor(sha string) error {
- refs, isPresent := c.table[sha]
+func (c *Cleaner) processEntry(oldSHA, newSHA string) error {
+ refs, isPresent := c.table[oldSHA]
+
+ if c.forEach != nil {
+ if err := c.forEach(oldSHA, newSHA, isPresent); err != nil {
+ return err
+ }
+ }
+
if !isPresent {
return nil
}
grpc_logrus.Extract(c.ctx).WithFields(log.Fields{
- "sha": sha,
+ "sha": oldSHA,
"refs": refs,
}).Info("removing internal references")
diff --git a/internal/service/cleanup/notifier/notifier.go b/internal/service/cleanup/notifier/notifier.go
new file mode 100644
index 000000000..e73317eef
--- /dev/null
+++ b/internal/service/cleanup/notifier/notifier.go
@@ -0,0 +1,64 @@
+package notifier
+
+import (
+ "context"
+
+ "gitlab.com/gitlab-org/gitaly/internal/git/catfile"
+ "gitlab.com/gitlab-org/gitaly/internal/helper/chunk"
+
+ "gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
+)
+
+// Notifier sends messages stating that an OID has been rewritten, looking
+// up the type of the OID if necessary. It is not safe for concurrent use
+type Notifier struct {
+ catfile *catfile.Batch
+ chunker *chunk.Chunker
+}
+
+// New instantiates a new Notifier
+func New(ctx context.Context, repo *gitalypb.Repository, chunker *chunk.Chunker) (*Notifier, error) {
+ catfile, err := catfile.New(ctx, repo)
+ if err != nil {
+ return nil, err
+ }
+
+ return &Notifier{catfile: catfile, chunker: chunker}, nil
+}
+
+// Notify builds a new message and sends it to the chunker
+func (n *Notifier) Notify(oldOid, newOid string, isInternalRef bool) error {
+ objectType := n.lookupType(newOid, isInternalRef)
+
+ entry := &gitalypb.ApplyBfgObjectMapStreamResponse_Entry{
+ Type: objectType,
+ OldOid: oldOid,
+ NewOid: newOid,
+ }
+
+ return n.chunker.Send(entry)
+}
+
+func (n *Notifier) lookupType(oid string, isInternalRef bool) gitalypb.ObjectType {
+ if isInternalRef {
+ return gitalypb.ObjectType_COMMIT
+ }
+
+ info, err := n.catfile.Info(oid)
+ if err != nil {
+ return gitalypb.ObjectType_UNKNOWN
+ }
+
+ switch info.Type {
+ case "commit":
+ return gitalypb.ObjectType_COMMIT
+ case "blob":
+ return gitalypb.ObjectType_BLOB
+ case "tree":
+ return gitalypb.ObjectType_TREE
+ case "tag":
+ return gitalypb.ObjectType_TAG
+ default:
+ return gitalypb.ObjectType_UNKNOWN
+ }
+}
diff --git a/internal/service/cleanup/server.go b/internal/service/cleanup/server.go
index c5bcb6d8f..b1bd4e0f5 100644
--- a/internal/service/cleanup/server.go
+++ b/internal/service/cleanup/server.go
@@ -1,7 +1,10 @@
package cleanup
import (
+ "context"
+
"gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
+ "gitlab.com/gitlab-org/gitaly/internal/helper"
)
type server struct{}
@@ -10,3 +13,7 @@ type server struct{}
func NewServer() gitalypb.CleanupServiceServer {
return &server{}
}
+
+func (s *server) CloseSession(context.Context, *gitalypb.CloseSessionRequest) (*gitalypb.CloseSessionResponse, error) {
+ return nil, helper.Unimplemented
+}
diff --git a/internal/service/commit/find_commit.go b/internal/service/commit/find_commit.go
index 902788055..dd67becda 100644
--- a/internal/service/commit/find_commit.go
+++ b/internal/service/commit/find_commit.go
@@ -3,17 +3,17 @@ package commit
import (
"context"
+ "gitlab.com/gitlab-org/gitaly/internal/helper"
+
"gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
"gitlab.com/gitlab-org/gitaly/internal/git"
"gitlab.com/gitlab-org/gitaly/internal/git/log"
- "google.golang.org/grpc/codes"
- "google.golang.org/grpc/status"
)
func (s *server) FindCommit(ctx context.Context, in *gitalypb.FindCommitRequest) (*gitalypb.FindCommitResponse, error) {
revision := in.GetRevision()
if err := git.ValidateRevision(revision); err != nil {
- return nil, status.Errorf(codes.InvalidArgument, "FindCommit: revision: %v", err)
+ return nil, helper.ErrInvalidArgument(err)
}
repo := in.GetRepository()
diff --git a/internal/service/commit/find_commit_test.go b/internal/service/commit/find_commit_test.go
index d5935beb5..ab64427c7 100644
--- a/internal/service/commit/find_commit_test.go
+++ b/internal/service/commit/find_commit_test.go
@@ -1,6 +1,7 @@
package commit
import (
+ "bufio"
"context"
"io/ioutil"
"strings"
@@ -9,10 +10,14 @@ import (
"github.com/golang/protobuf/ptypes/timestamp"
"github.com/stretchr/testify/require"
"gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
+ "gitlab.com/gitlab-org/gitaly/internal/git"
+ "gitlab.com/gitlab-org/gitaly/internal/git/catfile"
"gitlab.com/gitlab-org/gitaly/internal/git/log"
"gitlab.com/gitlab-org/gitaly/internal/helper"
+ "gitlab.com/gitlab-org/gitaly/internal/metadata/featureflag"
"gitlab.com/gitlab-org/gitaly/internal/testhelper"
"google.golang.org/grpc/codes"
+ "google.golang.org/grpc/metadata"
"google.golang.org/grpc/status"
)
@@ -286,3 +291,102 @@ func TestFailedFindCommitRequest(t *testing.T) {
})
}
}
+
+func BenchmarkFindCommitNoCache(b *testing.B) {
+ benchmarkFindCommit(false, b)
+}
+func BenchmarkFindCommitWithCache(b *testing.B) {
+ benchmarkFindCommit(true, b)
+}
+
+func benchmarkFindCommit(withCache bool, b *testing.B) {
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ server, serverSocketPath := startTestServices(b)
+ defer server.Stop()
+
+ client, conn := newCommitServiceClient(b, serverSocketPath)
+ defer conn.Close()
+
+ testRepo, _, cleanupFn := testhelper.NewTestRepo(b)
+ defer cleanupFn()
+
+ // get a list of revisions
+
+ logCmd, err := git.Command(ctx, testRepo, "log", "--format=format:%H")
+ require.NoError(b, err)
+
+ logScanner := bufio.NewScanner(logCmd)
+
+ var revisions []string
+ for logScanner.Scan() {
+ revisions = append(revisions, logScanner.Text())
+ }
+
+ require.NoError(b, logCmd.Wait())
+
+ defer catfile.ExpireAll()
+
+ for i := 0; i < b.N; i++ {
+ revision := revisions[b.N%len(revisions)]
+ if withCache {
+ md := metadata.New(map[string]string{
+ featureflag.HeaderKey(catfile.CacheFeatureFlagKey): "true",
+ "gitaly-session-id": "abc123",
+ })
+
+ ctx = metadata.NewOutgoingContext(ctx, md)
+ }
+ _, err := client.FindCommit(ctx, &gitalypb.FindCommitRequest{
+ Repository: testRepo,
+ Revision: []byte(revision),
+ })
+ require.NoError(b, err)
+ }
+}
+
+func TestFindCommitWithCache(t *testing.T) {
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ server, serverSocketPath := startTestServices(t)
+ defer server.Stop()
+
+ client, conn := newCommitServiceClient(t, serverSocketPath)
+ defer conn.Close()
+
+ testRepo, _, cleanupFn := testhelper.NewTestRepo(t)
+ defer cleanupFn()
+
+ // get a list of revisions
+
+ logCmd, err := git.Command(ctx, testRepo, "log", "--format=format:%H")
+ require.NoError(t, err)
+
+ logScanner := bufio.NewScanner(logCmd)
+
+ var revisions []string
+ for logScanner.Scan() {
+ revisions = append(revisions, logScanner.Text())
+ }
+
+ require.NoError(t, logCmd.Wait())
+
+ defer catfile.ExpireAll()
+
+ for i := 0; i < 10; i++ {
+ revision := revisions[i%len(revisions)]
+ md := metadata.New(map[string]string{
+ featureflag.HeaderKey(catfile.CacheFeatureFlagKey): "true",
+ "gitaly-session-id": "abc123",
+ })
+
+ ctx = metadata.NewOutgoingContext(ctx, md)
+ _, err := client.FindCommit(ctx, &gitalypb.FindCommitRequest{
+ Repository: testRepo,
+ Revision: []byte(revision),
+ })
+ require.NoError(t, err)
+ }
+}
diff --git a/internal/service/commit/find_commits.go b/internal/service/commit/find_commits.go
index 8d4967873..489f11240 100644
--- a/internal/service/commit/find_commits.go
+++ b/internal/service/commit/find_commits.go
@@ -51,6 +51,7 @@ func findCommits(ctx context.Context, req *gitalypb.FindCommitsRequest, stream g
if err != nil {
return fmt.Errorf("error when creating git log command: %v", err)
}
+
batch, err := catfile.New(ctx, req.GetRepository())
if err != nil {
return fmt.Errorf("creating catfile: %v", err)
diff --git a/internal/service/commit/list_last_commits_for_tree.go b/internal/service/commit/list_last_commits_for_tree.go
index 60d9c0952..b82947b48 100644
--- a/internal/service/commit/list_last_commits_for_tree.go
+++ b/internal/service/commit/list_last_commits_for_tree.go
@@ -14,6 +14,13 @@ import (
"google.golang.org/grpc/status"
)
+const (
+ // InvalidUTF8PathPlaceholder is a placeholder we return in the Path field since
+ // returning non utf8 data will result in a marshalling error
+ // Once we deprecate the Path field, we can remove this
+ InvalidUTF8PathPlaceholder = "ENCODING ERROR gitaly#1547"
+)
+
var (
maxNumStatBatchSize = 10
)
@@ -56,8 +63,8 @@ func (s *server) ListLastCommitsForTree(in *gitalypb.ListLastCommitsForTreeReque
}
commitForTree := &gitalypb.ListLastCommitsForTreeResponse_CommitForTree{
- Path: entry.Path,
- Commit: commit,
+ PathBytes: []byte(entry.Path),
+ Commit: commit,
}
batch = append(batch, commitForTree)
diff --git a/internal/service/commit/list_last_commits_for_tree_test.go b/internal/service/commit/list_last_commits_for_tree_test.go
index d3d2cd3e0..7ff1707de 100644
--- a/internal/service/commit/list_last_commits_for_tree_test.go
+++ b/internal/service/commit/list_last_commits_for_tree_test.go
@@ -1,12 +1,18 @@
package commit
import (
+ "bytes"
"context"
+ "fmt"
"io"
+ "strings"
"testing"
+ "unicode/utf8"
+ "github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
+ "gitlab.com/gitlab-org/gitaly/internal/helper/text"
"gitlab.com/gitlab-org/gitaly/internal/testhelper"
"google.golang.org/grpc/codes"
)
@@ -196,7 +202,7 @@ func TestSuccessfulListLastCommitsForTreeRequest(t *testing.T) {
for _, fetchedCommit := range commits {
expectedInfo := testCase.info[counter]
- require.Equal(t, string(expectedInfo.path), string(fetchedCommit.Path))
+ require.Equal(t, expectedInfo.path, fetchedCommit.PathBytes)
require.Equal(t, expectedInfo.id, fetchedCommit.Commit.Id)
counter++
@@ -291,3 +297,57 @@ func TestFailedListLastCommitsForTreeRequest(t *testing.T) {
})
}
}
+
+func TestNonUtf8ListLastCommitsForTreeRequest(t *testing.T) {
+ server, serverSockerPath := startTestServices(t)
+ defer server.Stop()
+
+ client, conn := newCommitServiceClient(t, serverSockerPath)
+ defer conn.Close()
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ testRepo, testRepoPath, cleanupFn := testhelper.NewTestRepo(t)
+ defer cleanupFn()
+
+ // This is an arbitrary blob known to exist in the test repository
+ const blobID = "c60514b6d3d6bf4bec1030f70026e34dfbd69ad5"
+
+ nonUTF8Filename := "hello\x80world"
+ require.False(t, utf8.ValidString(nonUTF8Filename))
+
+ mktreeIn := strings.NewReader(fmt.Sprintf("100644 blob %s\t%s", blobID, nonUTF8Filename))
+ treeID := text.ChompBytes(testhelper.MustRunCommand(t, mktreeIn, "git", "-C", testRepoPath, "mktree"))
+
+ commitID := text.ChompBytes(testhelper.MustRunCommand(t, nil, "git", "-C", testRepoPath, "commit-tree", treeID, "-m", "commit for non-utf8 path"))
+
+ request := &gitalypb.ListLastCommitsForTreeRequest{
+ Repository: testRepo,
+ Revision: string(commitID),
+ Limit: 100,
+ Offset: 0,
+ }
+
+ stream, err := client.ListLastCommitsForTree(ctx, request)
+ require.NoError(t, err)
+
+ var nonUTF8FilenameFound bool
+ for {
+ fetchedCommits, err := stream.Recv()
+ if err == io.EOF {
+ break
+ }
+
+ require.NoError(t, err)
+
+ commits := fetchedCommits.GetCommits()
+
+ for _, fetchedCommit := range commits {
+ if bytes.Equal(fetchedCommit.PathBytes, []byte(nonUTF8Filename)) {
+ nonUTF8FilenameFound = true
+ }
+ }
+ }
+
+ assert.True(t, nonUTF8FilenameFound)
+}
diff --git a/internal/service/commit/testhelper_test.go b/internal/service/commit/testhelper_test.go
index caa3a29b9..861b2e89c 100644
--- a/internal/service/commit/testhelper_test.go
+++ b/internal/service/commit/testhelper_test.go
@@ -40,7 +40,7 @@ func testMain(m *testing.M) int {
return m.Run()
}
-func startTestServices(t *testing.T) (*grpc.Server, string) {
+func startTestServices(t testing.TB) (*grpc.Server, string) {
server := testhelper.NewTestGrpcServer(t, nil, nil)
serverSocketPath := testhelper.GetTemporaryGitalySocketFileName()
@@ -56,7 +56,7 @@ func startTestServices(t *testing.T) (*grpc.Server, string) {
return server, "unix://" + serverSocketPath
}
-func newCommitServiceClient(t *testing.T, serviceSocketPath string) (gitalypb.CommitServiceClient, *grpc.ClientConn) {
+func newCommitServiceClient(t testing.TB, serviceSocketPath string) (gitalypb.CommitServiceClient, *grpc.ClientConn) {
connOpts := []grpc.DialOption{
grpc.WithInsecure(),
}
diff --git a/internal/service/objectpool/alternates.go b/internal/service/objectpool/alternates.go
new file mode 100644
index 000000000..09d2a3453
--- /dev/null
+++ b/internal/service/objectpool/alternates.go
@@ -0,0 +1,241 @@
+package objectpool
+
+import (
+ "context"
+ "crypto/rand"
+ "errors"
+ "fmt"
+ "io"
+ "io/ioutil"
+ "os"
+ "path/filepath"
+ "sort"
+ "strings"
+ "time"
+
+ grpc_logrus "github.com/grpc-ecosystem/go-grpc-middleware/logging/logrus"
+ "gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
+ "gitlab.com/gitlab-org/gitaly/internal/git"
+ "gitlab.com/gitlab-org/gitaly/internal/helper"
+)
+
+// DisconnectGitAlternates is a slightly dangerous RPC. It optimistically
+// hard-links all alternate objects we might need, and then temporarily
+// removes (renames) objects/info/alternates and runs 'git fsck'. If we
+// are unlucky that leaves the repository in a broken state during 'git
+// fsck'. If we are very unlucky and Gitaly crashes, the repository stays
+// in a broken state until an administrator intervenes and restores the
+// backed-up copy of objects/info/alternates.
+func (s *server) DisconnectGitAlternates(ctx context.Context, req *gitalypb.DisconnectGitAlternatesRequest) (*gitalypb.DisconnectGitAlternatesResponse, error) {
+ repo := req.Repository
+
+ if repo == nil {
+ return nil, helper.ErrInvalidArgument(errors.New("no repository"))
+ }
+
+ if err := disconnectAlternates(ctx, repo); err != nil {
+ return nil, helper.ErrInternal(err)
+ }
+
+ return &gitalypb.DisconnectGitAlternatesResponse{}, nil
+}
+
+func disconnectAlternates(ctx context.Context, repo *gitalypb.Repository) error {
+ repoPath, err := helper.GetRepoPath(repo)
+ if err != nil {
+ return err
+ }
+
+ altFile, err := git.InfoAlternatesPath(repo)
+ if err != nil {
+ return err
+ }
+
+ altContents, err := ioutil.ReadFile(altFile)
+ if err != nil {
+ if os.IsNotExist(err) {
+ return nil
+ }
+
+ return err
+ }
+
+ altDir := strings.TrimSpace(string(altContents))
+ if strings.Contains(altDir, "\n") {
+ return fmt.Errorf("found multiple lines in %s", altFile)
+ }
+
+ if !filepath.IsAbs(altDir) {
+ altDir = filepath.Join(repoPath, "objects", altDir)
+ }
+
+ backupFile, err := newBackupFile(altFile)
+ if err != nil {
+ return err
+ }
+
+ stat, err := os.Stat(altDir)
+ if err != nil {
+ if os.IsNotExist(err) {
+ return nil
+ }
+
+ return err
+ }
+
+ if !stat.IsDir() {
+ // The existing alternates file is bogus. There can be no objects on the
+ // other end that the current repository relies on, so we could just
+ // delete objects/info/alternates. To be a little more careful, instead of
+ // deleting it we rename it.
+ return os.Rename(altFile, backupFile)
+ }
+
+ objectFiles, err := findObjectFiles(altDir)
+ if err != nil {
+ return err
+ }
+
+ for _, path := range objectFiles {
+ source := filepath.Join(altDir, path)
+ target := filepath.Join(repoPath, "objects", path)
+
+ if err := os.MkdirAll(filepath.Dir(target), 0755); err != nil {
+ return err
+ }
+
+ if err := os.Link(source, target); err != nil {
+ if os.IsExist(err) {
+ continue
+ }
+
+ return err
+ }
+ }
+
+ return removeAlternatesIfOk(ctx, repo, altFile, backupFile)
+}
+
+func newBackupFile(altFile string) (string, error) {
+ randSuffix := make([]byte, 6)
+ if _, err := io.ReadFull(rand.Reader, randSuffix); err != nil {
+ return "", err
+ }
+
+ return fmt.Sprintf("%s.%d.%x", altFile, time.Now().Unix(), randSuffix), nil
+}
+
+func findObjectFiles(altDir string) ([]string, error) {
+ var objectFiles []string
+ if walkErr := filepath.Walk(altDir, func(path string, info os.FileInfo, err error) error {
+ if err != nil {
+ return err
+ }
+
+ rel, err := filepath.Rel(altDir, path)
+ if err != nil {
+ return err
+ }
+
+ if strings.HasPrefix(rel, "info/") {
+ return nil
+ }
+
+ if info.IsDir() {
+ return nil
+ }
+
+ objectFiles = append(objectFiles, rel)
+
+ return nil
+ }); walkErr != nil {
+ return nil, walkErr
+ }
+
+ sort.Sort(objectPaths(objectFiles))
+
+ return objectFiles, nil
+}
+
+type fsckError struct{ error }
+
+func (fe *fsckError) Error() string {
+ return fmt.Sprintf("git fsck error while disconnected: %v", fe.error)
+}
+
+// removeAlternatesIfOk is dangerous. We optimistically temporarily
+// rename objects/info/alternates, and run `git fsck` to see if the
+// resulting repo is connected. If this fails we restore
+// objects/info/alternates. If the repo is not connected for whatever
+// reason, then until this function returns, probably **all concurrent
+// RPC calls to the repo will fail**. Also, if Gitaly crashes in the
+// middle of this function, the repo is left in a broken state. We do
+// take care to leave a copy of the alternates file, so that it can be
+// manually restored by an administrator if needed.
+func removeAlternatesIfOk(ctx context.Context, repo *gitalypb.Repository, altFile, backupFile string) error {
+ if err := os.Rename(altFile, backupFile); err != nil {
+ return err
+ }
+
+ rollback := true
+ defer func() {
+ if !rollback {
+ return
+ }
+
+ logger := grpc_logrus.Extract(ctx)
+
+ // If we would do a os.Rename, and then someone else comes and clobbers
+ // our file, it's gone forever. This trick with os.Link and os.Rename
+ // is equivalent to "cp $backupFile $altFile", meaning backupFile is
+ // preserved for possible forensic use.
+ tmp := backupFile + ".2"
+
+ if err := os.Link(backupFile, tmp); err != nil {
+ logger.WithError(err).Error("copy backup alternates file")
+ return
+ }
+
+ if err := os.Rename(tmp, altFile); err != nil {
+ logger.WithError(err).Error("restore backup alternates file")
+ }
+ }()
+
+ cmd, err := git.Command(ctx, repo, "fsck", "--connectivity-only")
+ if err != nil {
+ return err
+ }
+
+ if err := cmd.Wait(); err != nil {
+ return &fsckError{error: err}
+ }
+
+ rollback = false
+ return nil
+}
+
+type objectPaths []string
+
+func (o objectPaths) Len() int { return len(o) }
+func (o objectPaths) Swap(i, j int) { o[i], o[j] = o[j], o[i] }
+
+func (o objectPaths) Less(i, j int) bool {
+ return objectPriority(o[i]) <= objectPriority(o[j])
+}
+
+// Based on pack_copy_priority in git/tmp-objdir.c
+func objectPriority(name string) int {
+ if !strings.HasPrefix(name, "pack") {
+ return 0
+ }
+ if strings.HasSuffix(name, ".keep") {
+ return 1
+ }
+ if strings.HasSuffix(name, ".pack") {
+ return 2
+ }
+ if strings.HasSuffix(name, ".idx") {
+ return 3
+ }
+ return 4
+}
diff --git a/internal/service/objectpool/alternates_test.go b/internal/service/objectpool/alternates_test.go
new file mode 100644
index 000000000..a8269f037
--- /dev/null
+++ b/internal/service/objectpool/alternates_test.go
@@ -0,0 +1,148 @@
+package objectpool
+
+import (
+ "fmt"
+ "io/ioutil"
+ "os"
+ "testing"
+
+ "github.com/stretchr/testify/require"
+ "gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
+ "gitlab.com/gitlab-org/gitaly/internal/git"
+ "gitlab.com/gitlab-org/gitaly/internal/git/objectpool"
+ "gitlab.com/gitlab-org/gitaly/internal/testhelper"
+)
+
+func TestDisconnectGitAlternates(t *testing.T) {
+ server, serverSocketPath := runObjectPoolServer(t)
+ defer server.Stop()
+
+ client, conn := newObjectPoolClient(t, serverSocketPath)
+ defer conn.Close()
+
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ testRepo, testRepoPath, cleanupFn := testhelper.NewTestRepo(t)
+ defer cleanupFn()
+
+ pool, err := objectpool.NewObjectPool(testRepo.GetStorageName(), testhelper.NewTestObjectPoolName(t))
+ require.NoError(t, err)
+ defer pool.Remove(ctx)
+
+ require.NoError(t, pool.Create(ctx, testRepo))
+ require.NoError(t, pool.Link(ctx, testRepo))
+ testhelper.MustRunCommand(t, nil, "git", "-C", testRepoPath, "gc")
+
+ existingObjectID := "55bc176024cfa3baaceb71db584c7e5df900ea65"
+
+ // Corrupt the repository to check that existingObjectID can no longer be found
+ altPath, err := git.InfoAlternatesPath(testRepo)
+ require.NoError(t, err, "find info/alternates")
+ require.NoError(t, os.RemoveAll(altPath))
+
+ cmd, err := git.Command(ctx, testRepo, "cat-file", "-e", existingObjectID)
+ require.NoError(t, err)
+ require.Error(t, cmd.Wait(), "expect cat-file to fail because object cannot be found")
+
+ require.NoError(t, pool.Link(ctx, testRepo))
+ require.FileExists(t, altPath, "objects/info/alternates should be back")
+
+ // At this point we know that the repository has access to
+ // existingObjectID, but only if objects/info/alternates is in place.
+
+ _, err = client.DisconnectGitAlternates(ctx, &gitalypb.DisconnectGitAlternatesRequest{Repository: testRepo})
+ require.NoError(t, err, "call DisconnectGitAlternates")
+
+ // Check that the object can still be found, even though
+ // objects/info/alternates is gone. This is the purpose of
+ // DisconnectGitAlternates.
+ testhelper.AssertFileNotExists(t, altPath)
+ testhelper.MustRunCommand(t, nil, "git", "-C", testRepoPath, "cat-file", "-e", existingObjectID)
+}
+
+func TestDisconnectGitAlternatesNoAlternates(t *testing.T) {
+ server, serverSocketPath := runObjectPoolServer(t)
+ defer server.Stop()
+
+ client, conn := newObjectPoolClient(t, serverSocketPath)
+ defer conn.Close()
+
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ testRepo, testRepoPath, cleanupFn := testhelper.NewTestRepo(t)
+ defer cleanupFn()
+
+ altPath, err := git.InfoAlternatesPath(testRepo)
+ require.NoError(t, err, "find info/alternates")
+ testhelper.AssertFileNotExists(t, altPath)
+
+ _, err = client.DisconnectGitAlternates(ctx, &gitalypb.DisconnectGitAlternatesRequest{Repository: testRepo})
+ require.NoError(t, err, "call DisconnectGitAlternates on repository without alternates")
+
+ testhelper.MustRunCommand(t, nil, "git", "-C", testRepoPath, "fsck")
+}
+
+func TestDisconnectGitAlternatesMultipleAlternates(t *testing.T) {
+ server, serverSocketPath := runObjectPoolServer(t)
+ defer server.Stop()
+
+ client, conn := newObjectPoolClient(t, serverSocketPath)
+ defer conn.Close()
+
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ testRepo, _, cleanupFn := testhelper.NewTestRepo(t)
+ defer cleanupFn()
+
+ altPath, err := git.InfoAlternatesPath(testRepo)
+ require.NoError(t, err, "find info/alternates")
+
+ altContent := "/foo/bar\n/qux/baz\n"
+ require.NoError(t, ioutil.WriteFile(altPath, []byte(altContent), 0644))
+
+ _, err = client.DisconnectGitAlternates(ctx, &gitalypb.DisconnectGitAlternatesRequest{Repository: testRepo})
+ require.Error(t, err, "call DisconnectGitAlternates on repository with multiple alternates")
+
+ contentAfterRPC, err := ioutil.ReadFile(altPath)
+ require.NoError(t, err, "read back objects/info/alternates")
+ require.Equal(t, altContent, string(contentAfterRPC), "objects/info/alternates content should not have changed")
+}
+
+func TestRemoveAlternatesIfOk(t *testing.T) {
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ testRepo, testRepoPath, cleanupFn := testhelper.NewTestRepo(t)
+ defer cleanupFn()
+
+ altPath, err := git.InfoAlternatesPath(testRepo)
+ require.NoError(t, err, "find info/alternates")
+ altContent := "/var/empty\n"
+ require.NoError(t, ioutil.WriteFile(altPath, []byte(altContent), 0644), "write alternates file")
+
+ // Intentionally break the repository, so that 'git fsck' will fail later.
+ testhelper.MustRunCommand(t, nil, "sh", "-c", fmt.Sprintf("rm %s/objects/pack/*.pack", testRepoPath))
+
+ altBackup := altPath + ".backup"
+
+ err = removeAlternatesIfOk(ctx, testRepo, altPath, altBackup)
+ require.Error(t, err, "removeAlternatesIfOk should fail")
+ require.IsType(t, &fsckError{}, err, "error must be because of fsck")
+
+ // We expect objects/info/alternates to have been restored when
+ // removeAlternatesIfOk returned.
+ assertAlternates(t, altPath, altContent)
+
+ // We expect the backup alternates file to still exist.
+ assertAlternates(t, altBackup, altContent)
+}
+
+func assertAlternates(t *testing.T, altPath string, altContent string) {
+ actualContent, err := ioutil.ReadFile(altPath)
+ require.NoError(t, err, "read %s after fsck failure", altPath)
+
+ require.Equal(t, altContent, string(actualContent), "%s content after fsck failure", altPath)
+}
diff --git a/internal/service/objectpool/fetch_into_object_pool.go b/internal/service/objectpool/fetch_into_object_pool.go
new file mode 100644
index 000000000..c331a5da4
--- /dev/null
+++ b/internal/service/objectpool/fetch_into_object_pool.go
@@ -0,0 +1,47 @@
+package objectpool
+
+import (
+ "context"
+ "errors"
+ "fmt"
+
+ "gitlab.com/gitlab-org/gitaly/internal/git/objectpool"
+ "gitlab.com/gitlab-org/gitaly/internal/helper"
+
+ "gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
+)
+
+func (s *server) FetchIntoObjectPool(ctx context.Context, req *gitalypb.FetchIntoObjectPoolRequest) (*gitalypb.FetchIntoObjectPoolResponse, error) {
+ if err := validateFetchIntoObjectPoolRequest(req); err != nil {
+ return nil, helper.ErrInvalidArgument(err)
+ }
+
+ objectPool, err := objectpool.FromProto(req.GetObjectPool())
+ if err != nil {
+ return nil, helper.ErrInvalidArgument(fmt.Errorf("object pool invalid: %v", err))
+ }
+
+ if err := objectPool.FetchFromOrigin(ctx, req.GetOrigin()); err != nil {
+ return nil, helper.ErrInternal(err)
+ }
+
+ return &gitalypb.FetchIntoObjectPoolResponse{}, nil
+}
+
+func validateFetchIntoObjectPoolRequest(req *gitalypb.FetchIntoObjectPoolRequest) error {
+ if req.GetOrigin() == nil {
+ return errors.New("origin is empty")
+ }
+
+ if req.GetObjectPool() == nil {
+ return errors.New("object pool is empty")
+ }
+
+ originRepository, poolRepository := req.GetOrigin(), req.GetObjectPool().GetRepository()
+
+ if originRepository.GetStorageName() != poolRepository.GetStorageName() {
+ return errors.New("origin has different storage than object pool")
+ }
+
+ return nil
+}
diff --git a/internal/service/objectpool/fetch_into_object_pool_test.go b/internal/service/objectpool/fetch_into_object_pool_test.go
new file mode 100644
index 000000000..4a40d13bb
--- /dev/null
+++ b/internal/service/objectpool/fetch_into_object_pool_test.go
@@ -0,0 +1,122 @@
+package objectpool
+
+import (
+ "path"
+ "path/filepath"
+ "testing"
+
+ "google.golang.org/grpc/codes"
+
+ "github.com/stretchr/testify/assert"
+ "github.com/stretchr/testify/require"
+ "gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
+ "gitlab.com/gitlab-org/gitaly/internal/git/objectpool"
+ "gitlab.com/gitlab-org/gitaly/internal/testhelper"
+)
+
+func TestFetchIntoObjectPool_Success(t *testing.T) {
+ server, serverSocketPath := runObjectPoolServer(t)
+ defer server.Stop()
+
+ client, conn := newObjectPoolClient(t, serverSocketPath)
+ defer conn.Close()
+
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ testRepo, testRepoPath, cleanupFn := testhelper.NewTestRepo(t)
+ defer cleanupFn()
+
+ repoCommit := testhelper.CreateCommit(t, testRepoPath, t.Name(), &testhelper.CreateCommitOpts{Message: t.Name()})
+
+ pool, err := objectpool.NewObjectPool("default", t.Name())
+ require.NoError(t, err)
+ defer pool.Remove(ctx)
+
+ req := &gitalypb.FetchIntoObjectPoolRequest{
+ ObjectPool: pool.ToProto(),
+ Origin: testRepo,
+ Repack: true,
+ }
+
+ _, err = client.FetchIntoObjectPool(ctx, req)
+ require.NoError(t, err)
+
+ require.True(t, pool.IsValid(), "ensure underlying repository is valid")
+
+ // No problems
+ testhelper.MustRunCommand(t, nil, "git", "-C", pool.FullPath(), "fsck")
+
+ packFiles, err := filepath.Glob(path.Join(pool.FullPath(), "objects", "pack", "pack-*.pack"))
+ require.NoError(t, err)
+ require.Len(t, packFiles, 1, "ensure commits got packed")
+
+ packContents := testhelper.MustRunCommand(t, nil, "git", "-C", pool.FullPath(), "verify-pack", "-v", packFiles[0])
+ require.Contains(t, string(packContents), string(repoCommit))
+
+ _, err = client.FetchIntoObjectPool(ctx, req)
+ require.NoError(t, err, "calling FetchIntoObjectPool twice should be OK")
+ require.True(t, pool.IsValid(), "ensure that pool is valid")
+}
+
+func TestFetchIntoObjectPool_Failure(t *testing.T) {
+ server, serverSocketPath := runObjectPoolServer(t)
+ defer server.Stop()
+
+ client, conn := newObjectPoolClient(t, serverSocketPath)
+ defer conn.Close()
+
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ testRepo, _, cleanupFn := testhelper.NewTestRepo(t)
+ defer cleanupFn()
+
+ pool, err := objectpool.NewObjectPool("default", t.Name())
+ require.NoError(t, err)
+ defer pool.Remove(ctx)
+
+ poolWithDifferentStorage := pool.ToProto()
+ poolWithDifferentStorage.Repository.StorageName = "some other storage"
+
+ testCases := []struct {
+ description string
+ request *gitalypb.FetchIntoObjectPoolRequest
+ code codes.Code
+ errMsg string
+ }{
+ {
+ description: "empty origin",
+ request: &gitalypb.FetchIntoObjectPoolRequest{
+ ObjectPool: pool.ToProto(),
+ },
+ code: codes.InvalidArgument,
+ errMsg: "origin is empty",
+ },
+ {
+ description: "empty pool",
+ request: &gitalypb.FetchIntoObjectPoolRequest{
+ Origin: testRepo,
+ },
+ code: codes.InvalidArgument,
+ errMsg: "object pool is empty",
+ },
+ {
+ description: "origin and pool do not share the same storage",
+ request: &gitalypb.FetchIntoObjectPoolRequest{
+ Origin: testRepo,
+ ObjectPool: poolWithDifferentStorage,
+ },
+ code: codes.InvalidArgument,
+ errMsg: "origin has different storage than object pool",
+ },
+ }
+ for _, tc := range testCases {
+ t.Run(tc.description, func(t *testing.T) {
+ _, err := client.FetchIntoObjectPool(ctx, tc.request)
+ require.Error(t, err)
+ testhelper.RequireGrpcError(t, err, tc.code)
+ assert.Contains(t, err.Error(), tc.errMsg)
+ })
+ }
+}
diff --git a/internal/service/objectpool/link.go b/internal/service/objectpool/link.go
index 37e64ad07..3b97a1ee7 100644
--- a/internal/service/objectpool/link.go
+++ b/internal/service/objectpool/link.go
@@ -21,8 +21,12 @@ func (s *server) LinkRepositoryToObjectPool(ctx context.Context, req *gitalypb.L
return nil, err
}
+ if err := pool.Init(ctx); err != nil {
+ return nil, helper.ErrInternal(err)
+ }
+
if err := pool.Link(ctx, req.GetRepository()); err != nil {
- return nil, status.Error(codes.Internal, helper.SanitizeString(err.Error()))
+ return nil, helper.ErrInternal(helper.SanitizeError(err))
}
return &gitalypb.LinkRepositoryToObjectPoolResponse{}, nil
diff --git a/internal/service/objectpool/link_test.go b/internal/service/objectpool/link_test.go
index 870fd27fe..28bf3e9f6 100644
--- a/internal/service/objectpool/link_test.go
+++ b/internal/service/objectpool/link_test.go
@@ -5,6 +5,9 @@ import (
"path/filepath"
"testing"
+ "gitlab.com/gitlab-org/gitaly/internal/helper"
+
+ "github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
"gitlab.com/gitlab-org/gitaly/internal/git/log"
@@ -155,6 +158,38 @@ func TestLinkNoClobber(t *testing.T) {
require.Equal(t, contentBefore, string(contentAfter), "contents of existing alternates file should not have changed")
}
+func TestLinkNoPool(t *testing.T) {
+ server, serverSocketPath := runObjectPoolServer(t)
+ defer server.Stop()
+
+ client, conn := newObjectPoolClient(t, serverSocketPath)
+ defer conn.Close()
+
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ testRepo, _, cleanupFn := testhelper.NewTestRepo(t)
+ defer cleanupFn()
+
+ pool, err := objectpool.NewObjectPool(testRepo.GetStorageName(), t.Name())
+ require.NoError(t, err)
+ // intentionally do not call pool.Create
+ defer pool.Remove(ctx)
+
+ request := &gitalypb.LinkRepositoryToObjectPoolRequest{
+ Repository: testRepo,
+ ObjectPool: pool.ToProto(),
+ }
+
+ _, err = client.LinkRepositoryToObjectPool(ctx, request)
+ require.NoError(t, err)
+
+ poolRepoPath, err := helper.GetRepoPath(pool)
+ require.NoError(t, err)
+
+ assert.True(t, helper.IsGitDirectory(poolRepoPath))
+}
+
func TestUnlink(t *testing.T) {
server, serverSocketPath := runObjectPoolServer(t)
defer server.Stop()
diff --git a/internal/service/operations/merge_test.go b/internal/service/operations/merge_test.go
index a682e4ff3..44e875b65 100644
--- a/internal/service/operations/merge_test.go
+++ b/internal/service/operations/merge_test.go
@@ -2,7 +2,6 @@ package operations
import (
"fmt"
- "io"
"io/ioutil"
"os"
"os/exec"
@@ -77,7 +76,7 @@ func TestSuccessfulMerge(t *testing.T) {
secondResponse, err := mergeBidi.Recv()
require.NoError(t, err, "receive second response")
- err = consumeEOF(func() error {
+ err = testhelper.ReceiveEOFWithTimeout(func() error {
_, err = mergeBidi.Recv()
return err
})
@@ -267,7 +266,7 @@ func TestFailedMergeDueToHooks(t *testing.T) {
require.NoError(t, err, "receive second response")
require.Contains(t, secondResponse.PreReceiveError, "failure")
- err = consumeEOF(func() error {
+ err = testhelper.ReceiveEOFWithTimeout(func() error {
_, err = mergeBidi.Recv()
return err
})
@@ -693,26 +692,6 @@ func prepareMergeBranch(t *testing.T, testRepoPath string) {
require.NoError(t, err, "set up branch to merge into: %s", out)
}
-func consumeEOF(errorFunc func() error) error {
- errCh := make(chan error, 1)
- go func() {
- errCh <- errorFunc()
- }()
-
- var err error
- select {
- case err = <-errCh:
- case <-time.After(1 * time.Second):
- err = fmt.Errorf("timed out waiting for EOF")
- }
-
- if err == io.EOF {
- err = nil
- }
-
- return err
-}
-
func deleteBranch(testRepoPath, branchName string) {
exec.Command("git", "-C", testRepoPath, "branch", "-D", branchName).Run()
}
diff --git a/internal/service/operations/rebase.go b/internal/service/operations/rebase.go
index abd012396..acc77b277 100644
--- a/internal/service/operations/rebase.go
+++ b/internal/service/operations/rebase.go
@@ -1,15 +1,115 @@
package operations
+//lint:file-ignore SA1019 due to planned removal in issue https://gitlab.com/gitlab-org/gitaly/issues/1628
+
import (
"context"
- "fmt"
+ "errors"
"gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
+ "gitlab.com/gitlab-org/gitaly/internal/helper"
"gitlab.com/gitlab-org/gitaly/internal/rubyserver"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/status"
)
+func (s *server) UserRebaseConfirmable(stream gitalypb.OperationService_UserRebaseConfirmableServer) error {
+ firstRequest, err := stream.Recv()
+ if err != nil {
+ return err
+ }
+
+ header := firstRequest.GetHeader()
+ if header == nil {
+ return helper.ErrInvalidArgument(errors.New("UserRebaseConfirmable: empty UserRebaseConfirmableRequest.Header"))
+ }
+
+ if err := validateUserRebaseConfirmableHeader(header); err != nil {
+ return helper.ErrInvalidArgumentf("UserRebaseConfirmable: %v", err)
+ }
+
+ if err := s.userRebaseConfirmable(stream, firstRequest, header.GetRepository()); err != nil {
+ return helper.ErrInternal(err)
+ }
+
+ return nil
+}
+
+func (s *server) userRebaseConfirmable(stream gitalypb.OperationService_UserRebaseConfirmableServer, firstRequest *gitalypb.UserRebaseConfirmableRequest, repository *gitalypb.Repository) error {
+ ctx := stream.Context()
+ client, err := s.OperationServiceClient(ctx)
+ if err != nil {
+ return err
+ }
+
+ clientCtx, err := rubyserver.SetHeaders(ctx, repository)
+ if err != nil {
+ return err
+ }
+
+ rubyStream, err := client.UserRebaseConfirmable(clientCtx)
+ if err != nil {
+ return err
+ }
+
+ if err := rubyStream.Send(firstRequest); err != nil {
+ return err
+ }
+
+ return rubyserver.ProxyBidi(
+ func() error {
+ request, err := stream.Recv()
+ if err != nil {
+ return err
+ }
+
+ return rubyStream.Send(request)
+ },
+ rubyStream,
+ func() error {
+ response, err := rubyStream.Recv()
+ if err != nil {
+ return err
+ }
+
+ return stream.Send(response)
+ },
+ )
+}
+
+func validateUserRebaseConfirmableHeader(header *gitalypb.UserRebaseConfirmableRequest_Header) error {
+ if header.GetRepository() == nil {
+ return errors.New("empty Repository")
+ }
+
+ if header.GetUser() == nil {
+ return errors.New("empty User")
+ }
+
+ if header.GetRebaseId() == "" {
+ return errors.New("empty RebaseId")
+ }
+
+ if header.GetBranch() == nil {
+ return errors.New("empty Branch")
+ }
+
+ if header.GetBranchSha() == "" {
+ return errors.New("empty BranchSha")
+ }
+
+ if header.GetRemoteRepository() == nil {
+ return errors.New("empty RemoteRepository")
+ }
+
+ if header.GetRemoteBranch() == nil {
+ return errors.New("empty RemoteBranch")
+ }
+
+ return nil
+}
+
+// DEPRECATED: https://gitlab.com/gitlab-org/gitaly/issues/1628
func (s *server) UserRebase(ctx context.Context, req *gitalypb.UserRebaseRequest) (*gitalypb.UserRebaseResponse, error) {
if err := validateUserRebaseRequest(req); err != nil {
return nil, status.Errorf(codes.InvalidArgument, "UserRebase: %v", err)
@@ -28,33 +128,34 @@ func (s *server) UserRebase(ctx context.Context, req *gitalypb.UserRebaseRequest
return client.UserRebase(clientCtx, req)
}
+// DEPRECATED: https://gitlab.com/gitlab-org/gitaly/issues/1628
func validateUserRebaseRequest(req *gitalypb.UserRebaseRequest) error {
if req.GetRepository() == nil {
- return fmt.Errorf("empty Repository")
+ return errors.New("empty Repository")
}
if req.GetUser() == nil {
- return fmt.Errorf("empty User")
+ return errors.New("empty User")
}
if req.GetRebaseId() == "" {
- return fmt.Errorf("empty RebaseId")
+ return errors.New("empty RebaseId")
}
if req.GetBranch() == nil {
- return fmt.Errorf("empty Branch")
+ return errors.New("empty Branch")
}
if req.GetBranchSha() == "" {
- return fmt.Errorf("empty BranchSha")
+ return errors.New("empty BranchSha")
}
if req.GetRemoteRepository() == nil {
- return fmt.Errorf("empty RemoteRepository")
+ return errors.New("empty RemoteRepository")
}
if req.GetRemoteBranch() == nil {
- return fmt.Errorf("empty RemoteBranch")
+ return errors.New("empty RemoteBranch")
}
return nil
diff --git a/internal/service/operations/rebase_test.go b/internal/service/operations/rebase_test.go
index 0ac8eb44f..fc9f06f92 100644
--- a/internal/service/operations/rebase_test.go
+++ b/internal/service/operations/rebase_test.go
@@ -1,19 +1,34 @@
package operations_test
+//lint:file-ignore SA1019 due to planned removal in issue https://gitlab.com/gitlab-org/gitaly/issues/1628
+
import (
+ "errors"
"fmt"
"strings"
"testing"
+ "time"
"github.com/stretchr/testify/require"
"gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
+ gitlog "gitlab.com/gitlab-org/gitaly/internal/git/log"
"gitlab.com/gitlab-org/gitaly/internal/service/operations"
"gitlab.com/gitlab-org/gitaly/internal/testhelper"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/metadata"
)
-func TestSuccessfulUserRebaseRequest(t *testing.T) {
+var (
+ rebaseUser = &gitalypb.User{
+ Name: []byte("Ahmad Sherif"),
+ Email: []byte("ahmad@gitlab.com"),
+ GlId: "user-123",
+ }
+
+ branchName = "many_files"
+)
+
+func TestSuccessfulUserRebaseConfirmableRequest(t *testing.T) {
ctxOuter, cancel := testhelper.Context()
defer cancel()
@@ -29,19 +44,245 @@ func TestSuccessfulUserRebaseRequest(t *testing.T) {
testRepoCopy, _, cleanup := testhelper.NewTestRepo(t)
defer cleanup()
- branchName := "many_files"
- branchSha := string(testhelper.MustRunCommand(t, nil, "git", "-C", testRepoPath, "rev-parse", branchName))
- branchSha = strings.TrimSpace(branchSha)
+ branchSha := getBranchSha(t, testRepoPath, branchName)
- user := &gitalypb.User{
- Name: []byte("Ahmad Sherif"),
- Email: []byte("ahmad@gitlab.com"),
- GlId: "user-123",
+ md := testhelper.GitalyServersMetadata(t, serverSocketPath)
+ ctx := metadata.NewOutgoingContext(ctxOuter, md)
+
+ rebaseStream, err := client.UserRebaseConfirmable(ctx)
+ require.NoError(t, err)
+
+ headerRequest := buildHeaderRequest(testRepo, rebaseUser, "1", branchName, branchSha, testRepoCopy, "master")
+ require.NoError(t, rebaseStream.Send(headerRequest), "send header")
+
+ firstResponse, err := rebaseStream.Recv()
+ require.NoError(t, err, "receive first response")
+
+ _, err = gitlog.GetCommit(ctx, testRepo, firstResponse.GetRebaseSha())
+ require.NoError(t, err, "look up git commit before rebase is applied")
+
+ applyRequest := buildApplyRequest(true)
+ require.NoError(t, rebaseStream.Send(applyRequest), "apply rebase")
+
+ secondResponse, err := rebaseStream.Recv()
+ require.NoError(t, err, "receive second response")
+
+ err = testhelper.ReceiveEOFWithTimeout(func() error {
+ _, err = rebaseStream.Recv()
+ return err
+ })
+ require.NoError(t, err, "consume EOF")
+
+ newBranchSha := getBranchSha(t, testRepoPath, branchName)
+
+ require.NotEqual(t, newBranchSha, branchSha)
+ require.Equal(t, newBranchSha, firstResponse.GetRebaseSha())
+
+ require.True(t, secondResponse.GetRebaseApplied(), "the second rebase is applied")
+}
+
+func TestFailedRebaseUserRebaseConfirmableRequestDueToInvalidHeader(t *testing.T) {
+ ctxOuter, cancel := testhelper.Context()
+ defer cancel()
+
+ server, serverSocketPath := runFullServer(t)
+ defer server.Stop()
+
+ client, conn := operations.NewOperationClient(t, serverSocketPath)
+ defer conn.Close()
+
+ testRepo, testRepoPath, cleanup := testhelper.NewTestRepo(t)
+ defer cleanup()
+
+ testRepoCopy, _, cleanup := testhelper.NewTestRepo(t)
+ defer cleanup()
+
+ branchSha := getBranchSha(t, testRepoPath, branchName)
+
+ md := testhelper.GitalyServersMetadata(t, serverSocketPath)
+ ctx := metadata.NewOutgoingContext(ctxOuter, md)
+
+ testCases := []struct {
+ desc string
+ req *gitalypb.UserRebaseConfirmableRequest
+ }{
+ {
+ desc: "empty Repository",
+ req: buildHeaderRequest(nil, rebaseUser, "1", branchName, branchSha, testRepoCopy, "master"),
+ },
+ {
+ desc: "empty User",
+ req: buildHeaderRequest(testRepo, nil, "1", branchName, branchSha, testRepoCopy, "master"),
+ },
+ {
+ desc: "empty Branch",
+ req: buildHeaderRequest(testRepo, rebaseUser, "1", "", branchSha, testRepoCopy, "master"),
+ },
+ {
+ desc: "empty BranchSha",
+ req: buildHeaderRequest(testRepo, rebaseUser, "1", branchName, "", testRepoCopy, "master"),
+ },
+ {
+ desc: "empty RemoteRepository",
+ req: buildHeaderRequest(testRepo, rebaseUser, "1", branchName, branchSha, nil, "master"),
+ },
+ {
+ desc: "empty RemoteBranch",
+ req: buildHeaderRequest(testRepo, rebaseUser, "1", branchName, branchSha, testRepoCopy, ""),
+ },
+ }
+
+ for _, tc := range testCases {
+ t.Run(tc.desc, func(t *testing.T) {
+ rebaseStream, err := client.UserRebaseConfirmable(ctx)
+ require.NoError(t, err)
+
+ require.NoError(t, rebaseStream.Send(tc.req), "send request header")
+
+ firstResponse, err := rebaseStream.Recv()
+ testhelper.RequireGrpcError(t, err, codes.InvalidArgument)
+ require.Contains(t, err.Error(), tc.desc)
+ require.Empty(t, firstResponse.GetRebaseSha(), "rebase sha on first response")
+ })
+ }
+}
+
+func TestAbortedUserRebaseConfirmable(t *testing.T) {
+ ctxOuter, cancel := testhelper.Context()
+ defer cancel()
+
+ server, serverSocketPath := runFullServer(t)
+ defer server.Stop()
+
+ client, conn := operations.NewOperationClient(t, serverSocketPath)
+ defer conn.Close()
+
+ md := testhelper.GitalyServersMetadata(t, serverSocketPath)
+ ctx := metadata.NewOutgoingContext(ctxOuter, md)
+
+ testCases := []struct {
+ req *gitalypb.UserRebaseConfirmableRequest
+ closeSend bool
+ desc string
+ code codes.Code
+ }{
+ {req: &gitalypb.UserRebaseConfirmableRequest{}, desc: "empty request, don't close", code: codes.FailedPrecondition},
+ {req: &gitalypb.UserRebaseConfirmableRequest{}, closeSend: true, desc: "empty request and close", code: codes.FailedPrecondition},
+ {closeSend: true, desc: "no request just close", code: codes.Internal},
+ }
+
+ for i, tc := range testCases {
+ t.Run(tc.desc, func(t *testing.T) {
+ testRepo, testRepoPath, cleanup := testhelper.NewTestRepo(t)
+ defer cleanup()
+
+ testRepoCopy, _, cleanup := testhelper.NewTestRepo(t)
+ defer cleanup()
+
+ branchSha := getBranchSha(t, testRepoPath, branchName)
+
+ headerRequest := buildHeaderRequest(testRepo, rebaseUser, fmt.Sprintf("%v", i), branchName, branchSha, testRepoCopy, "master")
+
+ rebaseStream, err := client.UserRebaseConfirmable(ctx)
+ require.NoError(t, err)
+
+ require.NoError(t, rebaseStream.Send(headerRequest), "send first request")
+
+ firstResponse, err := rebaseStream.Recv()
+ require.NoError(t, err, "receive first response")
+ require.NotEmpty(t, firstResponse.GetRebaseSha(), "rebase sha on first response")
+
+ if tc.req != nil {
+ require.NoError(t, rebaseStream.Send(tc.req), "send second request")
+ }
+
+ if tc.closeSend {
+ require.NoError(t, rebaseStream.CloseSend(), "close request stream from client")
+ }
+
+ secondResponse, err := recvTimeout(rebaseStream, 1*time.Second)
+ if err == errRecvTimeout {
+ t.Fatal(err)
+ }
+
+ require.False(t, secondResponse.GetRebaseApplied(), "rebase should not have been applied")
+ require.Error(t, err)
+ testhelper.RequireGrpcError(t, err, tc.code)
+
+ newBranchSha := getBranchSha(t, testRepoPath, branchName)
+ require.Equal(t, newBranchSha, branchSha, "branch should not change when the rebase is aborted")
+ })
}
+}
+
+func TestFailedUserRebaseConfirmableDueToApplyBeingFalse(t *testing.T) {
+ ctxOuter, cancel := testhelper.Context()
+ defer cancel()
+
+ server, serverSocketPath := runFullServer(t)
+ defer server.Stop()
+
+ client, conn := operations.NewOperationClient(t, serverSocketPath)
+ defer conn.Close()
+
+ testRepo, testRepoPath, cleanup := testhelper.NewTestRepo(t)
+ defer cleanup()
+
+ testRepoCopy, _, cleanup := testhelper.NewTestRepo(t)
+ defer cleanup()
+
+ branchSha := getBranchSha(t, testRepoPath, branchName)
+
+ md := testhelper.GitalyServersMetadata(t, serverSocketPath)
+ ctx := metadata.NewOutgoingContext(ctxOuter, md)
+
+ rebaseStream, err := client.UserRebaseConfirmable(ctx)
+ require.NoError(t, err)
+
+ headerRequest := buildHeaderRequest(testRepo, rebaseUser, "1", branchName, branchSha, testRepoCopy, "master")
+ require.NoError(t, rebaseStream.Send(headerRequest), "send header")
+
+ firstResponse, err := rebaseStream.Recv()
+ require.NoError(t, err, "receive first response")
+
+ _, err = gitlog.GetCommit(ctx, testRepo, firstResponse.GetRebaseSha())
+ require.NoError(t, err, "look up git commit before rebase is applied")
+
+ applyRequest := buildApplyRequest(false)
+ require.NoError(t, rebaseStream.Send(applyRequest), "apply rebase")
+
+ secondResponse, err := rebaseStream.Recv()
+ require.Error(t, err, "second response should have error")
+ testhelper.RequireGrpcError(t, err, codes.FailedPrecondition)
+ require.False(t, secondResponse.GetRebaseApplied(), "the second rebase is not applied")
+
+ newBranchSha := getBranchSha(t, testRepoPath, branchName)
+ require.Equal(t, branchSha, newBranchSha, "branch should not change when the rebase is not applied")
+ require.NotEqual(t, newBranchSha, firstResponse.GetRebaseSha(), "branch should not be the sha returned when the rebase is not applied")
+}
+
+// DEPRECATED: https://gitlab.com/gitlab-org/gitaly/issues/1628
+func TestSuccessfulUserRebaseRequest(t *testing.T) {
+ ctxOuter, cancel := testhelper.Context()
+ defer cancel()
+
+ server, serverSocketPath := runFullServer(t)
+ defer server.Stop()
+
+ client, conn := operations.NewOperationClient(t, serverSocketPath)
+ defer conn.Close()
+
+ testRepo, testRepoPath, cleanup := testhelper.NewTestRepo(t)
+ defer cleanup()
+
+ testRepoCopy, _, cleanup := testhelper.NewTestRepo(t)
+ defer cleanup()
+
+ branchSha := getBranchSha(t, testRepoPath, branchName)
request := &gitalypb.UserRebaseRequest{
Repository: testRepo,
- User: user,
+ User: rebaseUser,
RebaseId: "1",
Branch: []byte(branchName),
BranchSha: branchSha,
@@ -55,13 +296,13 @@ func TestSuccessfulUserRebaseRequest(t *testing.T) {
response, err := client.UserRebase(ctx, request)
require.NoError(t, err)
- newBranchSha := string(testhelper.MustRunCommand(t, nil, "git", "-C", testRepoPath, "rev-parse", branchName))
- newBranchSha = strings.TrimSpace(newBranchSha)
+ newBranchSha := getBranchSha(t, testRepoPath, branchName)
require.NotEqual(t, newBranchSha, branchSha)
require.Equal(t, newBranchSha, response.RebaseSha)
}
+// DEPRECATED: https://gitlab.com/gitlab-org/gitaly/issues/1628
func TestFailedUserRebaseRequestDueToPreReceiveError(t *testing.T) {
ctxOuter, cancel := testhelper.Context()
defer cancel()
@@ -78,19 +319,11 @@ func TestFailedUserRebaseRequestDueToPreReceiveError(t *testing.T) {
testRepoCopy, _, cleanup := testhelper.NewTestRepo(t)
defer cleanup()
- branchName := "many_files"
- branchSha := string(testhelper.MustRunCommand(t, nil, "git", "-C", testRepoPath, "rev-parse", branchName))
- branchSha = strings.TrimSpace(branchSha)
-
- user := &gitalypb.User{
- Name: []byte("Ahmad Sherif"),
- Email: []byte("ahmad@gitlab.com"),
- GlId: "user-123",
- }
+ branchSha := getBranchSha(t, testRepoPath, branchName)
request := &gitalypb.UserRebaseRequest{
Repository: testRepo,
- User: user,
+ User: rebaseUser,
Branch: []byte(branchName),
BranchSha: branchSha,
RemoteRepository: testRepoCopy,
@@ -110,11 +343,12 @@ func TestFailedUserRebaseRequestDueToPreReceiveError(t *testing.T) {
request.RebaseId = fmt.Sprintf("%d", i+1)
response, err := client.UserRebase(ctx, request)
require.NoError(t, err)
- require.Contains(t, response.PreReceiveError, "GL_ID="+user.GlId)
+ require.Contains(t, response.PreReceiveError, "GL_ID="+rebaseUser.GlId)
})
}
}
+// DEPRECATED: https://gitlab.com/gitlab-org/gitaly/issues/1628
func TestFailedUserRebaseRequestDueToGitError(t *testing.T) {
ctxOuter, cancel := testhelper.Context()
defer cancel()
@@ -131,21 +365,14 @@ func TestFailedUserRebaseRequestDueToGitError(t *testing.T) {
testRepoCopy, _, cleanup := testhelper.NewTestRepo(t)
defer cleanup()
- branchName := "rebase-encoding-failure-trigger"
- branchSha := string(testhelper.MustRunCommand(t, nil, "git", "-C", testRepoPath, "rev-parse", branchName))
- branchSha = strings.TrimSpace(branchSha)
-
- user := &gitalypb.User{
- Name: []byte("Ahmad Sherif"),
- Email: []byte("ahmad@gitlab.com"),
- GlId: "user-123",
- }
+ failedBranchName := "rebase-encoding-failure-trigger"
+ branchSha := getBranchSha(t, testRepoPath, failedBranchName)
request := &gitalypb.UserRebaseRequest{
Repository: testRepo,
- User: user,
+ User: rebaseUser,
RebaseId: "1",
- Branch: []byte(branchName),
+ Branch: []byte(failedBranchName),
BranchSha: branchSha,
RemoteRepository: testRepoCopy,
RemoteBranch: []byte("master"),
@@ -159,6 +386,7 @@ func TestFailedUserRebaseRequestDueToGitError(t *testing.T) {
require.Contains(t, response.GitError, "error: Failed to merge in the changes.")
}
+// DEPRECATED: https://gitlab.com/gitlab-org/gitaly/issues/1628
func TestFailedUserRebaseRequestDueToValidations(t *testing.T) {
ctxOuter, cancel := testhelper.Context()
defer cancel()
@@ -175,12 +403,6 @@ func TestFailedUserRebaseRequestDueToValidations(t *testing.T) {
testRepoCopy, _, cleanup := testhelper.NewTestRepo(t)
defer cleanup()
- user := &gitalypb.User{
- Name: []byte("Ahmad Sherif"),
- Email: []byte("ahmad@gitlab.com"),
- GlId: "user-123",
- }
-
testCases := []struct {
desc string
request *gitalypb.UserRebaseRequest
@@ -190,7 +412,7 @@ func TestFailedUserRebaseRequestDueToValidations(t *testing.T) {
desc: "empty repository",
request: &gitalypb.UserRebaseRequest{
Repository: nil,
- User: user,
+ User: rebaseUser,
RebaseId: "1",
Branch: []byte("some-branch"),
BranchSha: "38008cb17ce1466d8fec2dfa6f6ab8dcfe5cf49e",
@@ -216,7 +438,7 @@ func TestFailedUserRebaseRequestDueToValidations(t *testing.T) {
desc: "empty rebase id",
request: &gitalypb.UserRebaseRequest{
Repository: testRepo,
- User: user,
+ User: rebaseUser,
RebaseId: "",
Branch: []byte("some-branch"),
BranchSha: "38008cb17ce1466d8fec2dfa6f6ab8dcfe5cf49e",
@@ -229,7 +451,7 @@ func TestFailedUserRebaseRequestDueToValidations(t *testing.T) {
desc: "empty branch",
request: &gitalypb.UserRebaseRequest{
Repository: testRepo,
- User: user,
+ User: rebaseUser,
RebaseId: "1",
Branch: nil,
BranchSha: "38008cb17ce1466d8fec2dfa6f6ab8dcfe5cf49e",
@@ -242,7 +464,7 @@ func TestFailedUserRebaseRequestDueToValidations(t *testing.T) {
desc: "empty branch sha",
request: &gitalypb.UserRebaseRequest{
Repository: testRepo,
- User: user,
+ User: rebaseUser,
RebaseId: "1",
Branch: []byte("some-branch"),
BranchSha: "",
@@ -255,7 +477,7 @@ func TestFailedUserRebaseRequestDueToValidations(t *testing.T) {
desc: "empty remote repository",
request: &gitalypb.UserRebaseRequest{
Repository: testRepo,
- User: user,
+ User: rebaseUser,
RebaseId: "1",
Branch: []byte("some-branch"),
BranchSha: "38008cb17ce1466d8fec2dfa6f6ab8dcfe5cf49e",
@@ -268,7 +490,7 @@ func TestFailedUserRebaseRequestDueToValidations(t *testing.T) {
desc: "empty remote branch",
request: &gitalypb.UserRebaseRequest{
Repository: testRepo,
- User: user,
+ User: rebaseUser,
RebaseId: "1",
Branch: []byte("some-branch"),
BranchSha: "38008cb17ce1466d8fec2dfa6f6ab8dcfe5cf49e",
@@ -289,3 +511,55 @@ func TestFailedUserRebaseRequestDueToValidations(t *testing.T) {
})
}
}
+
+func getBranchSha(t *testing.T, repoPath string, branchName string) string {
+ branchSha := string(testhelper.MustRunCommand(t, nil, "git", "-C", repoPath, "rev-parse", branchName))
+ return strings.TrimSpace(branchSha)
+}
+
+// This error is used as a sentinel value
+var errRecvTimeout = errors.New("timeout waiting for response")
+
+func recvTimeout(bidi gitalypb.OperationService_UserRebaseConfirmableClient, timeout time.Duration) (*gitalypb.UserRebaseConfirmableResponse, error) {
+ type responseError struct {
+ response *gitalypb.UserRebaseConfirmableResponse
+ err error
+ }
+ responseCh := make(chan responseError, 1)
+
+ go func() {
+ resp, err := bidi.Recv()
+ responseCh <- responseError{resp, err}
+ }()
+
+ select {
+ case respErr := <-responseCh:
+ return respErr.response, respErr.err
+ case <-time.After(timeout):
+ return nil, errRecvTimeout
+ }
+}
+
+func buildHeaderRequest(repo *gitalypb.Repository, user *gitalypb.User, rebaseId string, branchName string, branchSha string, remoteRepo *gitalypb.Repository, remoteBranch string) *gitalypb.UserRebaseConfirmableRequest {
+ return &gitalypb.UserRebaseConfirmableRequest{
+ UserRebaseConfirmableRequestPayload: &gitalypb.UserRebaseConfirmableRequest_Header_{
+ &gitalypb.UserRebaseConfirmableRequest_Header{
+ Repository: repo,
+ User: user,
+ RebaseId: rebaseId,
+ Branch: []byte(branchName),
+ BranchSha: branchSha,
+ RemoteRepository: remoteRepo,
+ RemoteBranch: []byte(remoteBranch),
+ },
+ },
+ }
+}
+
+func buildApplyRequest(apply bool) *gitalypb.UserRebaseConfirmableRequest {
+ return &gitalypb.UserRebaseConfirmableRequest{
+ UserRebaseConfirmableRequestPayload: &gitalypb.UserRebaseConfirmableRequest_Apply{
+ Apply: apply,
+ },
+ }
+}
diff --git a/internal/service/operations/squash_test.go b/internal/service/operations/squash_test.go
index 29d13183c..ca0767f02 100644
--- a/internal/service/operations/squash_test.go
+++ b/internal/service/operations/squash_test.go
@@ -1,11 +1,14 @@
package operations
import (
+ "io/ioutil"
+ "os"
"testing"
"github.com/stretchr/testify/require"
"gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
"gitlab.com/gitlab-org/gitaly/internal/git/log"
+ "gitlab.com/gitlab-org/gitaly/internal/helper/text"
"gitlab.com/gitlab-org/gitaly/internal/testhelper"
"google.golang.org/grpc/codes"
)
@@ -51,10 +54,82 @@ func TestSuccessfulUserSquashRequest(t *testing.T) {
commit, err := log.GetCommit(ctx, testRepo, response.SquashSha)
require.NoError(t, err)
- require.Equal(t, commit.ParentIds, []string{startSha})
- require.Equal(t, string(commit.Author.Email), "johndoe@gitlab.com")
- require.Equal(t, string(commit.Committer.Email), "janedoe@gitlab.com")
- require.Equal(t, commit.Subject, commitMessage)
+ require.Equal(t, []string{startSha}, commit.ParentIds)
+ require.Equal(t, author.Name, commit.Author.Name)
+ require.Equal(t, author.Email, commit.Author.Email)
+ require.Equal(t, user.Name, commit.Committer.Name)
+ require.Equal(t, user.Email, commit.Committer.Email)
+ require.Equal(t, commitMessage, commit.Subject)
+}
+
+func TestSuccessfulUserSquashRequestWith3wayMerge(t *testing.T) {
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ server, serverSocketPath := runOperationServiceServer(t)
+ defer server.Stop()
+
+ client, conn := NewOperationClient(t, serverSocketPath)
+ defer conn.Close()
+
+ testRepo, testRepoPath, cleanupFn := testhelper.NewTestRepoWithWorktree(t)
+ defer cleanupFn()
+
+ // The following patch inserts a single line so that we create a
+ // file that is slightly different from a branched version of this
+ // file. A 3-way merge must be used in order to merge a branch that
+ // alters lines involved in this diff.
+ patch := `
+diff --git a/files/ruby/popen.rb b/files/ruby/popen.rb
+index 5b812ff..ff85394 100644
+--- a/files/ruby/popen.rb
++++ b/files/ruby/popen.rb
+@@ -19,6 +19,7 @@ module Popen
+
+ @cmd_output = ""
+ @cmd_status = 0
++
+ Open3.popen3(vars, *cmd, options) do |stdin, stdout, stderr, wait_thr|
+ @cmd_output << stdout.read
+ @cmd_output << stderr.read
+`
+ tmpFile, err := ioutil.TempFile(os.TempDir(), "squash-test")
+ require.NoError(t, err)
+
+ tmpFile.Write([]byte(patch))
+ tmpFile.Close()
+
+ defer os.Remove(tmpFile.Name())
+
+ testhelper.MustRunCommand(t, nil, "git", "-C", testRepoPath, "checkout", "-b", "3way-test", "v1.0.0")
+ testhelper.MustRunCommand(t, nil, "git", "-C", testRepoPath, "apply", tmpFile.Name())
+ testhelper.MustRunCommand(t, nil, "git", "-C", testRepoPath, "commit", "-m", "test", "-a")
+ baseSha := text.ChompBytes(testhelper.MustRunCommand(t, nil, "git", "-C", testRepoPath, "rev-parse", "HEAD"))
+
+ request := &gitalypb.UserSquashRequest{
+ Repository: testRepo,
+ User: user,
+ SquashId: "1",
+ Branch: []byte("3way-test"),
+ Author: author,
+ CommitMessage: commitMessage,
+ // The diff between two of these commits results in some changes to files/ruby/popen.rb
+ StartSha: "6f6d7e7ed97bb5f0054f2b1df789b39ca89b6ff9",
+ EndSha: "570e7b2abdd848b95f2f578043fc23bd6f6fd24d",
+ }
+
+ response, err := client.UserSquash(ctx, request)
+ require.NoError(t, err)
+ require.Empty(t, response.GetGitError())
+
+ commit, err := log.GetCommit(ctx, testRepo, response.SquashSha)
+ require.NoError(t, err)
+ require.Equal(t, []string{baseSha}, commit.ParentIds)
+ require.Equal(t, author.Name, commit.Author.Name)
+ require.Equal(t, author.Email, commit.Author.Email)
+ require.Equal(t, user.Name, commit.Committer.Name)
+ require.Equal(t, user.Email, commit.Committer.Email)
+ require.Equal(t, commitMessage, commit.Subject)
}
func TestFailedUserSquashRequestDueToGitError(t *testing.T) {
diff --git a/internal/service/operations/submodules_test.go b/internal/service/operations/submodules_test.go
index 57d32cbed..ec1b1ba5b 100644
--- a/internal/service/operations/submodules_test.go
+++ b/internal/service/operations/submodules_test.go
@@ -74,8 +74,8 @@ func TestSuccessfulUserUpdateSubmoduleRequest(t *testing.T) {
parser := lstree.NewParser(bytes.NewReader(entry))
parsedEntry, err := parser.NextEntry()
require.NoError(t, err)
- require.Equal(t, parsedEntry.Path, testCase.submodule)
- require.Equal(t, parsedEntry.Oid, testCase.commitSha)
+ require.Equal(t, testCase.submodule, string(parsedEntry.Path))
+ require.Equal(t, testCase.commitSha, parsedEntry.Oid)
})
}
}
diff --git a/internal/service/ref/pack_refs.go b/internal/service/ref/pack_refs.go
index 224d0411c..66de8ca32 100644
--- a/internal/service/ref/pack_refs.go
+++ b/internal/service/ref/pack_refs.go
@@ -5,11 +5,10 @@ import (
"errors"
"fmt"
+ "gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
"gitlab.com/gitlab-org/gitaly/internal/git"
"gitlab.com/gitlab-org/gitaly/internal/git/repository"
"gitlab.com/gitlab-org/gitaly/internal/helper"
-
- "gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
)
func (server) PackRefs(ctx context.Context, in *gitalypb.PackRefsRequest) (*gitalypb.PackRefsResponse, error) {
diff --git a/internal/service/ref/refs_test.go b/internal/service/ref/refs_test.go
index 2fae85498..f50355d54 100644
--- a/internal/service/ref/refs_test.go
+++ b/internal/service/ref/refs_test.go
@@ -11,8 +11,10 @@ import (
"testing"
"github.com/golang/protobuf/ptypes/timestamp"
+ "github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
+ "gitlab.com/gitlab-org/gitaly/internal/git/catfile"
"gitlab.com/gitlab-org/gitaly/internal/git/log"
"gitlab.com/gitlab-org/gitaly/internal/git/updateref"
"gitlab.com/gitlab-org/gitaly/internal/helper"
@@ -486,6 +488,9 @@ func TestSuccessfulFindAllTagsRequest(t *testing.T) {
// A tag with a commit id as its name
commitTagID := testhelper.CreateTag(t, testRepoCopyPath, commitID, commitID, &testhelper.CreateTagOpts{Message: "commit tag with a commit sha as the name"})
+ // a tag of a tag
+ tagOfTagID := testhelper.CreateTag(t, testRepoCopyPath, "tag-of-tag", commitTagID, &testhelper.CreateTagOpts{Message: "tag of a tag"})
+
client, conn := newRefServiceClient(t, serverSocketPath)
defer conn.Close()
@@ -513,6 +518,13 @@ func TestSuccessfulFindAllTagsRequest(t *testing.T) {
MessageSize: 40,
},
{
+ Name: []byte("tag-of-tag"),
+ Id: string(tagOfTagID),
+ TargetCommit: gitCommit,
+ Message: []byte("tag of a tag"),
+ MessageSize: 12,
+ },
+ {
Name: []byte("v1.0.0"),
Id: "f4e6814c3e4e7a0de82a9e7cd20c626cc963a2f8",
TargetCommit: gitCommit,
@@ -583,6 +595,108 @@ func TestSuccessfulFindAllTagsRequest(t *testing.T) {
}
}
+func TestFindAllTagNestedTags(t *testing.T) {
+ server, serverSocketPath := runRefServiceServer(t)
+ defer server.Stop()
+
+ testRepoCopy, testRepoCopyPath, cleanupFn := testhelper.NewTestRepoWithWorktree(t)
+ defer cleanupFn()
+
+ blobID := "faaf198af3a36dbf41961466703cc1d47c61d051"
+ commitID := "6f6d7e7ed97bb5f0054f2b1df789b39ca89b6ff9"
+
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ testCases := []struct {
+ description string
+ depth int
+ originalOid string
+ }{
+ {
+ description: "nested 1 deep, points to a commit",
+ depth: 1,
+ originalOid: commitID,
+ },
+ {
+ description: "nested 4 deep, points to a commit",
+ depth: 4,
+ originalOid: commitID,
+ },
+ {
+ description: "nested 3 deep, points to a blob",
+ depth: 3,
+ originalOid: blobID,
+ },
+ {
+ description: "nested 20 deep, points to a commit",
+ depth: 20,
+ originalOid: commitID,
+ },
+ }
+
+ for _, tc := range testCases {
+ t.Run(tc.description, func(t *testing.T) {
+ tags := bytes.NewReader(testhelper.MustRunCommand(t, nil, "git", "-C", testRepoCopyPath, "tag"))
+ testhelper.MustRunCommand(t, tags, "xargs", "git", "-C", testRepoCopyPath, "tag", "-d")
+
+ batch, err := catfile.New(ctx, testRepoCopy)
+ require.NoError(t, err)
+
+ info, err := batch.Info(tc.originalOid)
+ require.NoError(t, err)
+
+ expectedTags := make(map[string]*gitalypb.Tag)
+ tagID := tc.originalOid
+
+ for depth := 0; depth < tc.depth; depth++ {
+ tagName := fmt.Sprintf("tag-depth-%d", depth)
+ tagMessage := fmt.Sprintf("a commit %d deep", depth)
+ tagID = string(testhelper.CreateTag(t, testRepoCopyPath, tagName, tagID, &testhelper.CreateTagOpts{Message: tagMessage}))
+
+ expectedTag := &gitalypb.Tag{
+ Name: []byte(tagName),
+ Id: string(tagID),
+ Message: []byte(tagMessage),
+ MessageSize: int64(len([]byte(tagMessage))),
+ }
+
+ // only expect the TargetCommit to be populated if it is a commit and if its less than 10 tags deep
+ if info.Type == "commit" && depth < log.MaxTagReferenceDepth {
+ commit, err := log.GetCommitCatfile(batch, tc.originalOid)
+ require.NoError(t, err)
+ expectedTag.TargetCommit = commit
+ }
+
+ expectedTags[string(expectedTag.Name)] = expectedTag
+ }
+
+ client, conn := newRefServiceClient(t, serverSocketPath)
+ defer conn.Close()
+
+ rpcRequest := &gitalypb.FindAllTagsRequest{Repository: testRepoCopy}
+
+ c, err := client.FindAllTags(ctx, rpcRequest)
+ require.NoError(t, err)
+
+ var receivedTags []*gitalypb.Tag
+ for {
+ r, err := c.Recv()
+ if err == io.EOF {
+ break
+ }
+ require.NoError(t, err)
+ receivedTags = append(receivedTags, r.GetTags()...)
+ }
+
+ require.Len(t, receivedTags, len(expectedTags))
+ for _, receivedTag := range receivedTags {
+ assert.Equal(t, expectedTags[string(receivedTag.Name)], receivedTag)
+ }
+ })
+ }
+}
+
func TestInvalidFindAllTagsRequest(t *testing.T) {
server, serverSocketPath := runRefServiceServer(t)
defer server.Stop()
@@ -652,6 +766,7 @@ func TestSuccessfulFindLocalBranches(t *testing.T) {
if err == io.EOF {
break
}
+ require.NoError(t, err)
if err != nil {
t.Fatal(err)
}
diff --git a/internal/service/repository/cleanup.go b/internal/service/repository/cleanup.go
index 9cae1580b..35e96f4bb 100644
--- a/internal/service/repository/cleanup.go
+++ b/internal/service/repository/cleanup.go
@@ -9,27 +9,29 @@ import (
"time"
"gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
+ "gitlab.com/gitlab-org/gitaly/internal/git"
"gitlab.com/gitlab-org/gitaly/internal/helper"
+
"google.golang.org/grpc/codes"
"google.golang.org/grpc/status"
)
var lockFiles = []string{"config.lock", "HEAD.lock"}
-func (server) Cleanup(_ctx context.Context, in *gitalypb.CleanupRequest) (*gitalypb.CleanupResponse, error) {
- repoPath, err := helper.GetRepoPath(in.GetRepository())
- if err != nil {
- return nil, err
- }
-
- if err := cleanupRepo(repoPath); err != nil {
+func (server) Cleanup(ctx context.Context, in *gitalypb.CleanupRequest) (*gitalypb.CleanupResponse, error) {
+ if err := cleanupRepo(ctx, in.GetRepository()); err != nil {
return nil, err
}
return &gitalypb.CleanupResponse{}, nil
}
-func cleanupRepo(repoPath string) error {
+func cleanupRepo(ctx context.Context, repo *gitalypb.Repository) error {
+ repoPath, err := helper.GetRepoPath(repo)
+ if err != nil {
+ return err
+ }
+
threshold := time.Now().Add(-1 * time.Hour)
if err := cleanRefsLocks(filepath.Join(repoPath, "refs"), threshold); err != nil {
return status.Errorf(codes.Internal, "Cleanup: cleanRefsLocks: %v", err)
@@ -43,6 +45,10 @@ func cleanupRepo(repoPath string) error {
return status.Errorf(codes.Internal, "Cleanup: cleanStaleWorktrees: %v", err)
}
+ if err := cleanDisconnectedWorktrees(ctx, repo); err != nil {
+ return status.Errorf(codes.Internal, "Cleanup: cleanDisconnectedWorktrees: %v", err)
+ }
+
configLockThreshod := time.Now().Add(-15 * time.Minute)
if err := cleanFileLocks(repoPath, configLockThreshod); err != nil {
return status.Errorf(codes.Internal, "Cleanup: cleanupConfigLock: %v", err)
@@ -128,6 +134,15 @@ func cleanStaleWorktrees(repoPath string, threshold time.Time) error {
return nil
}
+func cleanDisconnectedWorktrees(ctx context.Context, repo *gitalypb.Repository) error {
+ cmd, err := git.Command(ctx, repo, "worktree", "prune")
+ if err != nil {
+ return err
+ }
+
+ return cmd.Wait()
+}
+
func cleanFileLocks(repoPath string, threshold time.Time) error {
for _, fileName := range lockFiles {
lockPath := filepath.Join(repoPath, fileName)
diff --git a/internal/service/repository/cleanup_test.go b/internal/service/repository/cleanup_test.go
index da88cce37..cec59c4ec 100644
--- a/internal/service/repository/cleanup_test.go
+++ b/internal/service/repository/cleanup_test.go
@@ -2,6 +2,7 @@ package repository
import (
"os"
+ "os/exec"
"path/filepath"
"testing"
"time"
@@ -9,6 +10,7 @@ import (
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
+ "gitlab.com/gitlab-org/gitaly/internal/git"
"gitlab.com/gitlab-org/gitaly/internal/testhelper"
)
@@ -185,6 +187,75 @@ func TestCleanupDeletesStaleWorktrees(t *testing.T) {
}
}
+func TestCleanupDisconnectedWorktrees(t *testing.T) {
+ const (
+ worktreeName = "test-worktree"
+ worktreeAdminDir = "worktrees"
+ )
+
+ addWorkTree := func(repoPath, worktree string) error {
+ return exec.Command(
+ "git",
+ testhelper.AddWorktreeArgs(repoPath, worktree)...,
+ ).Run()
+ }
+
+ server, serverSocketPath := runRepoServer(t)
+ defer server.Stop()
+
+ client, conn := newRepositoryClient(t, serverSocketPath)
+ defer conn.Close()
+
+ testRepo, testRepoPath, cleanupFn := testhelper.NewTestRepo(t)
+ defer cleanupFn()
+
+ worktreePath := filepath.Join(testRepoPath, worktreeName)
+ worktreeAdminPath := filepath.Join(
+ testRepoPath, worktreeAdminDir, filepath.Base(worktreeName),
+ )
+
+ req := &gitalypb.CleanupRequest{Repository: testRepo}
+
+ testhelper.AddWorktree(t, testRepoPath, worktreeName)
+
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ // removing the work tree path but leaving the administrative files in
+ // $GIT_DIR/worktrees will result in the work tree being in a
+ // "disconnected" state
+ err := os.RemoveAll(worktreePath)
+ require.NoError(t, err,
+ "disconnecting worktree by removing work tree at %s should succeed", worktreePath,
+ )
+
+ // TODO: remove the following version checks when the lowest supported git
+ // version is 2.20.0 or higher. Refer to relevant gitlab-ce issue:
+ // https://gitlab.com/gitlab-org/gitlab-ce/issues/54255
+ version, err := git.Version()
+ require.NoError(t, err)
+
+ pre2_20_0, err := git.VersionLessThan(version, "2.20.0")
+ require.NoError(t, err)
+
+ if !pre2_20_0 {
+ err = addWorkTree(testRepoPath, worktreeName)
+ require.Error(t, err,
+ "creating a new work tree at the same path as a disconnected work tree should fail",
+ )
+ }
+
+ // cleanup should prune the disconnected worktree administrative files
+ _, err = client.Cleanup(ctx, req)
+ require.NoError(t, err)
+ testhelper.AssertFileNotExists(t, worktreeAdminPath)
+
+ // if the worktree administrative files are pruned, then we should be able
+ // to checkout another worktree at the same path
+ err = addWorkTree(testRepoPath, worktreeName)
+ require.NoError(t, err)
+}
+
func TestCleanupFileLocks(t *testing.T) {
server, serverSocketPath := runRepoServer(t)
defer server.Stop()
diff --git a/internal/service/repository/create_from_snapshot_test.go b/internal/service/repository/create_from_snapshot_test.go
index e252ce9e2..b092479d0 100644
--- a/internal/service/repository/create_from_snapshot_test.go
+++ b/internal/service/repository/create_from_snapshot_test.go
@@ -106,10 +106,6 @@ func TestCreateRepositoryFromSnapshotSuccess(t *testing.T) {
// hooks/ and config were excluded, but the RPC should create them
require.FileExists(t, filepath.Join(repoPath, "config"), "Config file not created")
-
- fi, err := os.Lstat(filepath.Join(repoPath, "hooks"))
- require.NoError(t, err)
- require.Equal(t, os.ModeSymlink, fi.Mode()&os.ModeSymlink, "Symlink to global hooks not created")
}
func TestCreateRepositoryFromSnapshotFailsIfRepositoryExists(t *testing.T) {
diff --git a/internal/service/repository/create_test.go b/internal/service/repository/create_test.go
index 7a36c40f7..e238f8e18 100644
--- a/internal/service/repository/create_test.go
+++ b/internal/service/repository/create_test.go
@@ -8,7 +8,6 @@ import (
"github.com/stretchr/testify/require"
"gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
- "gitlab.com/gitlab-org/gitaly/internal/config"
"gitlab.com/gitlab-org/gitaly/internal/helper"
"gitlab.com/gitlab-org/gitaly/internal/testhelper"
"google.golang.org/grpc/codes"
@@ -40,16 +39,6 @@ func TestCreateRepositorySuccess(t *testing.T) {
require.NoError(t, err)
require.True(t, fi.IsDir(), "%q must be a directory", fi.Name())
}
-
- hooksDir := path.Join(repoDir, "hooks")
-
- fi, err := os.Lstat(hooksDir)
- require.NoError(t, err)
- require.True(t, fi.Mode()&os.ModeSymlink > 0, "expected %q to be a symlink, got mode %v", hooksDir, fi.Mode())
-
- hooksTarget, err := os.Readlink(hooksDir)
- require.NoError(t, err)
- require.Equal(t, path.Join(config.Config.GitlabShell.Dir, "hooks"), hooksTarget)
}
func TestCreateRepositoryFailure(t *testing.T) {
diff --git a/internal/service/repository/fetch_remote.go b/internal/service/repository/fetch_remote.go
index b29db8b56..419051816 100644
--- a/internal/service/repository/fetch_remote.go
+++ b/internal/service/repository/fetch_remote.go
@@ -3,22 +3,11 @@ 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"
)
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)
if err != nil {
return nil, err
diff --git a/internal/service/repository/fetch_remote_test.go b/internal/service/repository/fetch_remote_test.go
index 2a8ee4f1b..30630a1cc 100644
--- a/internal/service/repository/fetch_remote_test.go
+++ b/internal/service/repository/fetch_remote_test.go
@@ -1,8 +1,14 @@
package repository
import (
+ "bytes"
+ "fmt"
+ "io/ioutil"
+ "net/http"
+ "net/http/httptest"
"os"
"path"
+ "strings"
"testing"
"github.com/stretchr/testify/assert"
@@ -92,3 +98,137 @@ func TestFetchRemoteFailure(t *testing.T) {
})
}
}
+
+const (
+ httpToken = "ABCefg0999182"
+)
+
+func remoteHTTPServer(t *testing.T, repoName, httpToken string) (*httptest.Server, string) {
+ s := httptest.NewServer(
+ http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
+ if r.URL.String() == fmt.Sprintf("/%s.git/info/refs?service=git-upload-pack", repoName) {
+ if httpToken != "" && r.Header.Get("Authorization") != httpToken {
+ w.WriteHeader(http.StatusUnauthorized)
+ return
+ }
+ w.Header().Set("Content-Type", "application/x-git-upload-pack-advertisement")
+ w.WriteHeader(http.StatusOK)
+
+ b, err := ioutil.ReadFile("testdata/advertise.txt")
+ require.NoError(t, err)
+ w.Write(b)
+ } else {
+ w.WriteHeader(http.StatusNotFound)
+ }
+ }),
+ )
+
+ return s, fmt.Sprintf("%s/%s.git", s.URL, repoName)
+}
+
+func getRefnames(t *testing.T, repoPath string) []string {
+ result := testhelper.MustRunCommand(t, nil, "git", "-C", repoPath, "for-each-ref", "--format", "%(refname:lstrip=2)")
+ return strings.Split(string(bytes.TrimRight(result, "\n")), "\n")
+}
+
+func TestFetchRemoteOverHTTP(t *testing.T) {
+ server, serverSocketPath := runRepoServer(t)
+ defer server.Stop()
+
+ client, conn := newRepositoryClient(t, serverSocketPath)
+ defer conn.Close()
+
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ testCases := []struct {
+ description string
+ httpToken string
+ }{
+ {
+ description: "with http token",
+ httpToken: httpToken,
+ },
+ {
+ description: "without http token",
+ httpToken: "",
+ },
+ }
+
+ for _, tc := range testCases {
+ t.Run(tc.description, func(t *testing.T) {
+ forkedRepo, forkedRepoPath, forkedRepoCleanup := testhelper.NewTestRepo(t)
+ defer forkedRepoCleanup()
+
+ _, remoteURL := remoteHTTPServer(t, "my-repo", tc.httpToken)
+
+ req := &gitalypb.FetchRemoteRequest{
+ Repository: forkedRepo,
+ RemoteParams: &gitalypb.Remote{
+ Url: remoteURL,
+ Name: "geo",
+ HttpAuthorizationHeader: tc.httpToken,
+ MirrorRefmaps: []string{"all_refs"},
+ },
+ Timeout: 1000,
+ }
+
+ refs := getRefnames(t, forkedRepoPath)
+ require.True(t, len(refs) > 1, "the advertisement.txt should have deleted all refs except for master")
+
+ _, err := client.FetchRemote(ctx, req)
+ require.NoError(t, err)
+
+ refs = getRefnames(t, forkedRepoPath)
+
+ require.Len(t, refs, 1)
+ assert.Equal(t, "master", refs[0])
+
+ })
+ }
+}
+
+func TestFetchRemoteOverHTTPError(t *testing.T) {
+ server, serverSocketPath := runRepoServer(t)
+ defer server.Stop()
+
+ client, conn := newRepositoryClient(t, serverSocketPath)
+ defer conn.Close()
+
+ testRepo, _, cleanupFn := testhelper.NewTestRepo(t)
+ defer cleanupFn()
+
+ testCases := []struct {
+ desc string
+ request gitalypb.FetchRemoteRequest
+ code codes.Code
+ err string
+ }{
+ {
+ desc: "bad remote url",
+ request: gitalypb.FetchRemoteRequest{
+ Repository: testRepo,
+ RemoteParams: &gitalypb.Remote{
+ Url: "not a url",
+ Name: "remote",
+ HttpAuthorizationHeader: httpToken,
+ },
+ Timeout: 1000,
+ },
+ code: codes.InvalidArgument,
+ err: "invalid remote url",
+ },
+ }
+
+ for _, tc := range testCases {
+ t.Run(tc.desc, func(t *testing.T) {
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ resp, err := client.FetchRemote(ctx, &tc.request)
+ testhelper.RequireGrpcError(t, err, tc.code)
+ require.Contains(t, err.Error(), tc.err)
+ assert.Nil(t, resp)
+ })
+ }
+}
diff --git a/internal/service/repository/gc.go b/internal/service/repository/gc.go
index 879059475..daf073b57 100644
--- a/internal/service/repository/gc.go
+++ b/internal/service/repository/gc.go
@@ -15,7 +15,6 @@ import (
"gitlab.com/gitlab-org/gitaly/internal/git/catfile"
"gitlab.com/gitlab-org/gitaly/internal/helper"
"gitlab.com/gitlab-org/gitaly/internal/helper/housekeeping"
- "google.golang.org/grpc/codes"
"google.golang.org/grpc/status"
)
@@ -30,7 +29,7 @@ func (server) GarbageCollect(ctx context.Context, in *gitalypb.GarbageCollectReq
return nil, err
}
- if err := cleanupRepo(repoPath); err != nil {
+ if err := cleanupRepo(ctx, in.GetRepository()); err != nil {
return nil, err
}
@@ -38,28 +37,64 @@ func (server) GarbageCollect(ctx context.Context, in *gitalypb.GarbageCollectReq
return nil, err
}
+ if err := gc(ctx, in); err != nil {
+ return nil, err
+ }
+
+ if err := configureCommitGraph(ctx, in); err != nil {
+ return nil, err
+ }
+
+ // Perform housekeeping post GC
+ err = housekeeping.Perform(ctx, repoPath)
+ if err != nil {
+ ctxlogger.WithError(err).Warn("Post gc housekeeping failed")
+ }
+
+ return &gitalypb.GarbageCollectResponse{}, nil
+}
+
+func gc(ctx context.Context, in *gitalypb.GarbageCollectRequest) error {
args := repackConfig(ctx, in.CreateBitmap)
- args = append(args, "gc")
+ // run garbage collect and also write the commit graph
+ args = append(args,
+ "-c", "gc.writeCommitGraph=true",
+ "gc",
+ )
+
cmd, err := git.Command(ctx, in.GetRepository(), args...)
if err != nil {
if _, ok := status.FromError(err); ok {
- return nil, err
+ return err
}
- return nil, status.Errorf(codes.Internal, "GarbageCollect: gitCommand: %v", err)
+ return helper.ErrInternal(fmt.Errorf("GarbageCollect: gitCommand: %v", err))
}
if err := cmd.Wait(); err != nil {
- return nil, status.Errorf(codes.Internal, "GarbageCollect: cmd wait: %v", err)
+ return helper.ErrInternal(fmt.Errorf("GarbageCollect: cmd wait: %v", err))
}
- // Perform housekeeping post GC
- err = housekeeping.Perform(ctx, repoPath)
+ return nil
+}
+
+func configureCommitGraph(ctx context.Context, in *gitalypb.GarbageCollectRequest) error {
+ args := []string{"config", "core.commitGraph", "true"}
+
+ cmd, err := git.Command(ctx, in.GetRepository(), args...)
if err != nil {
- ctxlogger.WithError(err).Warn("Post gc housekeeping failed")
+ if _, ok := status.FromError(err); ok {
+ return err
+ }
+
+ return helper.ErrInternal(fmt.Errorf("GarbageCollect: config gitCommand: %v", err))
}
- return &gitalypb.GarbageCollectResponse{}, nil
+ if err := cmd.Wait(); err != nil {
+ return helper.ErrInternal(fmt.Errorf("GarbageCollect: config cmd wait: %v", err))
+ }
+
+ return nil
}
func cleanupKeepArounds(ctx context.Context, repo *gitalypb.Repository) error {
diff --git a/internal/service/repository/gc_test.go b/internal/service/repository/gc_test.go
index c920e8304..7bd0969af 100644
--- a/internal/service/repository/gc_test.go
+++ b/internal/service/repository/gc_test.go
@@ -13,8 +13,8 @@ import (
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
- "gitlab.com/gitlab-org/gitaly/internal/featureflag"
"gitlab.com/gitlab-org/gitaly/internal/helper/text"
+ "gitlab.com/gitlab-org/gitaly/internal/metadata/featureflag"
"gitlab.com/gitlab-org/gitaly/internal/testhelper"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/metadata"
@@ -26,6 +26,42 @@ var (
oldTreeTime = freshTime.Add(-7 * time.Hour)
)
+func TestGarbageCollectCommitGraph(t *testing.T) {
+ server, serverSocketPath := runRepoServer(t)
+ defer server.Stop()
+
+ client, conn := newRepositoryClient(t, serverSocketPath)
+ defer conn.Close()
+
+ testRepo, testRepoPath, cleanupFn := testhelper.NewTestRepo(t)
+ defer cleanupFn()
+
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ c, err := client.GarbageCollect(ctx, &gitalypb.GarbageCollectRequest{Repository: testRepo})
+ assert.NoError(t, err)
+ assert.NotNil(t, c)
+
+ assert.FileExistsf(t,
+ filepath.Join(testRepoPath, "objects/info/commit-graph"),
+ "pre-computed commit-graph should exist after running garbage collect",
+ )
+
+ repoCfgPath := filepath.Join(testRepoPath, "config")
+
+ cfgF, err := os.Open(repoCfgPath)
+ require.NoError(t, err)
+ defer cfgF.Close()
+
+ cfg, err := testhelper.ParseConfig(cfgF)
+ require.NoError(t, err)
+
+ actualValue, ok := cfg.GetValue("core", "commitGraph")
+ require.True(t, ok)
+ require.Equal(t, "true", actualValue)
+}
+
func TestGarbageCollectSuccess(t *testing.T) {
server, serverSocketPath := runRepoServer(t)
defer server.Stop()
diff --git a/internal/service/repository/repack.go b/internal/service/repository/repack.go
index fcc876a44..aeaf5fe4f 100644
--- a/internal/service/repository/repack.go
+++ b/internal/service/repository/repack.go
@@ -6,8 +6,9 @@ import (
"github.com/prometheus/client_golang/prometheus"
"gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
- "gitlab.com/gitlab-org/gitaly/internal/featureflag"
"gitlab.com/gitlab-org/gitaly/internal/git"
+ "gitlab.com/gitlab-org/gitaly/internal/git/repository"
+ "gitlab.com/gitlab-org/gitaly/internal/metadata/featureflag"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/status"
)
@@ -42,7 +43,7 @@ func (server) RepackIncremental(ctx context.Context, in *gitalypb.RepackIncremen
return &gitalypb.RepackIncrementalResponse{}, nil
}
-func repackCommand(ctx context.Context, repo *gitalypb.Repository, bitmap bool, args ...string) error {
+func repackCommand(ctx context.Context, repo repository.GitRepo, bitmap bool, args ...string) error {
cmdArgs := repackConfig(ctx, bitmap)
cmdArgs = append(cmdArgs, "repack", "-d")
diff --git a/internal/service/repository/repack_test.go b/internal/service/repository/repack_test.go
index 324c61532..082d41243 100644
--- a/internal/service/repository/repack_test.go
+++ b/internal/service/repository/repack_test.go
@@ -11,7 +11,7 @@ import (
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
- "gitlab.com/gitlab-org/gitaly/internal/featureflag"
+ "gitlab.com/gitlab-org/gitaly/internal/metadata/featureflag"
"gitlab.com/gitlab-org/gitaly/internal/testhelper"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/metadata"
diff --git a/internal/service/repository/search_files.go b/internal/service/repository/search_files.go
index 31a9f8efa..8865e0b56 100644
--- a/internal/service/repository/search_files.go
+++ b/internal/service/repository/search_files.go
@@ -38,7 +38,7 @@ func (s *server) SearchFilesByContent(req *gitalypb.SearchFilesByContentRequest,
"--null",
"--before-context", surroundContext,
"--after-context", surroundContext,
- "--extended-regexp",
+ "--perl-regexp",
"-e", // next arg is pattern, keep this last
req.GetQuery(),
string(req.GetRef()),
diff --git a/internal/service/repository/search_files_test.go b/internal/service/repository/search_files_test.go
index 28ea0f203..b2d217c60 100644
--- a/internal/service/repository/search_files_test.go
+++ b/internal/service/repository/search_files_test.go
@@ -118,6 +118,12 @@ func TestSearchFilesByContentSuccessful(t *testing.T) {
ref: "many_files",
output: [][]byte{},
},
+ {
+ desc: "with regexp limiter only recognized by pcre",
+ query: "(*LIMIT_MATCH=1)foobar",
+ ref: "many_files",
+ output: contentOutputLines,
+ },
}
for _, tc := range testCases {
diff --git a/internal/service/repository/testdata/advertise.txt b/internal/service/repository/testdata/advertise.txt
new file mode 100644
index 000000000..a07f3623c
--- /dev/null
+++ b/internal/service/repository/testdata/advertise.txt
@@ -0,0 +1,4 @@
+001e# service=git-upload-pack
+000000f91e292f8fedd741b75372e19097c76d327140c312 HEADmulti_ack thin-pack side-band side-band-64k ofs-delta shallow deepen-since deepen-not deepen-relative no-progress include-tag multi_ack_detailed no-done symref=HEAD:refs/heads/master agent=git/2.21.0
+003f1e292f8fedd741b75372e19097c76d327140c312 refs/heads/master
+0000 \ No newline at end of file
diff --git a/internal/service/wiki/get_all_pages_test.go b/internal/service/wiki/get_all_pages_test.go
index 458f820d2..a328579e7 100644
--- a/internal/service/wiki/get_all_pages_test.go
+++ b/internal/service/wiki/get_all_pages_test.go
@@ -183,20 +183,24 @@ func TestFailedWikiGetAllPagesDueToValidation(t *testing.T) {
client, conn := newWikiClient(t, serverSocketPath)
defer conn.Close()
- rpcRequests := []gitalypb.WikiGetAllPagesRequest{
- {Repository: &gitalypb.Repository{StorageName: "fake", RelativePath: "path"}}, // Repository doesn't exist
- {Repository: nil}, // Repository is nil
+ testCases := []struct {
+ desc string
+ req *gitalypb.WikiGetAllPagesRequest
+ }{
+ {desc: "no repository", req: &gitalypb.WikiGetAllPagesRequest{}},
}
- for _, rpcRequest := range rpcRequests {
- ctx, cancel := testhelper.Context()
- defer cancel()
+ for _, tc := range testCases {
+ t.Run(tc.desc, func(t *testing.T) {
+ ctx, cancel := testhelper.Context()
+ defer cancel()
- c, err := client.WikiGetAllPages(ctx, &rpcRequest)
- require.NoError(t, err)
+ c, err := client.WikiGetAllPages(ctx, tc.req)
+ require.NoError(t, err)
- err = drainWikiGetAllPagesResponse(c)
- testhelper.RequireGrpcError(t, err, codes.InvalidArgument)
+ err = drainWikiGetAllPagesResponse(c)
+ testhelper.RequireGrpcError(t, err, codes.InvalidArgument)
+ })
}
}
diff --git a/internal/testhelper/config.go b/internal/testhelper/config.go
new file mode 100644
index 000000000..14869b05c
--- /dev/null
+++ b/internal/testhelper/config.go
@@ -0,0 +1,64 @@
+package testhelper
+
+import (
+ "bufio"
+ "io"
+ "regexp"
+ "strings"
+)
+
+var cfgHeaderRegex = regexp.MustCompile(`^\[(.*?)\]$`)
+
+// ConfigFile allows access to the different sections of a git config file
+type ConfigFile map[string][]string
+
+// ParseConfig will attempt to parse a config file into sections
+func ParseConfig(src io.Reader) (ConfigFile, error) {
+ scanner := bufio.NewScanner(src)
+
+ currentSection := ""
+ parsed := map[string][]string{}
+
+ for scanner.Scan() {
+ line := scanner.Text()
+
+ matches := cfgHeaderRegex.FindStringSubmatch(line)
+ if len(matches) == 2 {
+ currentSection = matches[1]
+ continue
+ }
+
+ parsed[currentSection] = append(
+ parsed[currentSection],
+ strings.TrimSpace(line),
+ )
+ }
+
+ if err := scanner.Err(); err != nil {
+ return nil, err
+ }
+
+ return parsed, nil
+}
+
+var configPairRegex = regexp.MustCompile(`^(.*?) = (.*?)$`)
+
+// GetValue will return the value for a configuration line int the specified
+// section for the provided key
+func (cf ConfigFile) GetValue(section, key string) (string, bool) {
+ pairs := cf[section]
+
+ for _, pair := range pairs {
+ matches := configPairRegex.FindStringSubmatch(pair)
+ if len(matches) != 3 {
+ continue
+ }
+
+ k, v := matches[1], matches[2]
+ if k == key {
+ return v, true
+ }
+ }
+
+ return "", false
+}
diff --git a/internal/testhelper/config_test.go b/internal/testhelper/config_test.go
new file mode 100644
index 000000000..401f82c87
--- /dev/null
+++ b/internal/testhelper/config_test.go
@@ -0,0 +1,41 @@
+package testhelper_test
+
+import (
+ "bytes"
+ "testing"
+
+ "github.com/stretchr/testify/require"
+ "gitlab.com/gitlab-org/gitaly/internal/testhelper"
+)
+
+var cfgData = `
+[core]
+ bare = false
+ commitGraph = true
+[remote "origin"]
+ url = git@gitlab.com:gitlab-org/gitaly.git
+ fetch = +refs/heads/*:refs/remotes/origin/*
+`
+
+func TestConfigParser(t *testing.T) {
+ cfg, err := testhelper.ParseConfig(bytes.NewBuffer([]byte(cfgData)))
+ require.NoError(t, err)
+
+ for _, tc := range []struct {
+ section string
+ key string
+ expectValue string
+ }{
+ {"core", "commitGraph", "true"},
+ {"core", "bare", "false"},
+ {`remote "origin"`, "url", "git@gitlab.com:gitlab-org/gitaly.git"},
+ {`remote "origin"`, "fetch", "+refs/heads/*:refs/remotes/origin/*"},
+ } {
+ actualValue, ok := cfg.GetValue(tc.section, tc.key)
+ require.True(t, ok)
+ require.Equalf(t,
+ tc.expectValue, actualValue,
+ "ensuring correct value for %s:%s", tc.section, tc.key,
+ )
+ }
+}
diff --git a/internal/testhelper/stream.go b/internal/testhelper/stream.go
new file mode 100644
index 000000000..7129f7d42
--- /dev/null
+++ b/internal/testhelper/stream.go
@@ -0,0 +1,29 @@
+package testhelper
+
+import (
+ "fmt"
+ "io"
+ "time"
+)
+
+// ReceiveEOFWithTimeout reads to the end of the stream and will throw an
+// error if a deadlock is suspected
+func ReceiveEOFWithTimeout(errorFunc func() error) error {
+ errCh := make(chan error, 1)
+ go func() {
+ errCh <- errorFunc()
+ }()
+
+ var err error
+ select {
+ case err = <-errCh:
+ case <-time.After(1 * time.Second):
+ err = fmt.Errorf("timed out waiting for EOF")
+ }
+
+ if err == io.EOF {
+ err = nil
+ }
+
+ return err
+}
diff --git a/internal/testhelper/test_hook.go b/internal/testhelper/test_hook.go
index 2e9b9d7a5..93d229a2a 100644
--- a/internal/testhelper/test_hook.go
+++ b/internal/testhelper/test_hook.go
@@ -8,7 +8,7 @@ import (
)
type testHook struct {
- t *testing.T
+ t testing.TB
formatter log.Formatter
}
@@ -43,12 +43,12 @@ func (s testHook) Fire(entry *log.Entry) error {
}
// NewTestLogger created a logrus hook which can be used with testing logs
-func NewTestLogger(t *testing.T) *log.Logger {
+func NewTestLogger(tb testing.TB) *log.Logger {
logger := log.New()
logger.Out = ioutil.Discard
formatter := &log.TextFormatter{}
- logger.Hooks.Add(testHook{t, formatter})
+ logger.Hooks.Add(testHook{tb, formatter})
return logger
}
diff --git a/internal/testhelper/testhelper.go b/internal/testhelper/testhelper.go
index 32fdfe418..5b139227f 100644
--- a/internal/testhelper/testhelper.go
+++ b/internal/testhelper/testhelper.go
@@ -144,7 +144,7 @@ func RequireGrpcError(t *testing.T, err error, expectedCode codes.Code) {
}
// MustRunCommand runs a command with an optional standard input and returns the standard output, or fails.
-func MustRunCommand(t *testing.T, stdin io.Reader, name string, args ...string) []byte {
+func MustRunCommand(t testing.TB, stdin io.Reader, name string, args ...string) []byte {
cmd := exec.Command(name, args...)
if name == "git" {
@@ -279,9 +279,9 @@ func GetGitEnvData() (string, error) {
}
// NewTestGrpcServer creates a GRPC Server for testing purposes
-func NewTestGrpcServer(t *testing.T, streamInterceptors []grpc.StreamServerInterceptor, unaryInterceptors []grpc.UnaryServerInterceptor) *grpc.Server {
- logger := NewTestLogger(t)
- logrusEntry := log.NewEntry(logger).WithField("test", t.Name())
+func NewTestGrpcServer(tb testing.TB, streamInterceptors []grpc.StreamServerInterceptor, unaryInterceptors []grpc.UnaryServerInterceptor) *grpc.Server {
+ logger := NewTestLogger(tb)
+ logrusEntry := log.NewEntry(logger).WithField("test", tb.Name())
ctxTagger := grpc_ctxtags.WithFieldExtractorForInitialReq(fieldextractors.FieldExtractor)
ctxStreamTagger := grpc_ctxtags.StreamServerInterceptor(ctxTagger)
@@ -352,7 +352,7 @@ func Context() (context.Context, func()) {
}
// CreateRepo creates an temporary directory for a repo, without initializing it
-func CreateRepo(t *testing.T, storagePath string) (repo *gitalypb.Repository, repoPath, relativePath string) {
+func CreateRepo(t testing.TB, storagePath string) (repo *gitalypb.Repository, repoPath, relativePath string) {
normalizedPrefix := strings.Replace(t.Name(), "/", "-", -1) //TempDir doesn't like a prefix containing slashes
repoPath, err := ioutil.TempDir(storagePath, normalizedPrefix)
@@ -392,7 +392,7 @@ func initRepo(t *testing.T, bare bool) (*gitalypb.Repository, string, func()) {
}
// NewTestRepo creates a bare copy of the test repository.
-func NewTestRepo(t *testing.T) (repo *gitalypb.Repository, repoPath string, cleanup func()) {
+func NewTestRepo(t testing.TB) (repo *gitalypb.Repository, repoPath string, cleanup func()) {
return cloneTestRepo(t, true)
}
@@ -402,7 +402,7 @@ func NewTestRepoWithWorktree(t *testing.T) (repo *gitalypb.Repository, repoPath
return cloneTestRepo(t, false)
}
-func cloneTestRepo(t *testing.T, bare bool) (repo *gitalypb.Repository, repoPath string, cleanup func()) {
+func cloneTestRepo(t testing.TB, bare bool) (repo *gitalypb.Repository, repoPath string, cleanup func()) {
storagePath := GitlabTestStoragePath()
repo, repoPath, relativePath := CreateRepo(t, storagePath)
testRepo := TestRepository()
@@ -421,11 +421,15 @@ func cloneTestRepo(t *testing.T, bare bool) (repo *gitalypb.Repository, repoPath
return repo, repoPath, func() { os.RemoveAll(repoPath) }
}
+// AddWorktreeArgs returns git command arguments for adding a worktree at the
+// specified repo
+func AddWorktreeArgs(repoPath, worktreeName string) []string {
+ return []string{"-C", repoPath, "worktree", "add", "--detach", worktreeName}
+}
+
// AddWorktree creates a worktree in the repository path for tests
func AddWorktree(t *testing.T, repoPath string, worktreeName string) {
- args := []string{"-C", repoPath, "worktree", "add", "--detach", worktreeName}
-
- MustRunCommand(t, nil, "git", args...)
+ MustRunCommand(t, nil, "git", AddWorktreeArgs(repoPath, worktreeName)...)
}
// ConfigureGitalySSH configures the gitaly-ssh command for tests
@@ -456,7 +460,7 @@ func GetRepositoryRefs(t *testing.T, repoPath string) string {
// AssertFileNotExists asserts true if the file doesn't exist, false otherwise
func AssertFileNotExists(t *testing.T, path string) {
_, err := os.Stat(path)
- assert.True(t, os.IsNotExist(err))
+ assert.True(t, os.IsNotExist(err), "file should not exist: %s", path)
}
// NewTestObjectPoolName returns a random pool repository name.
diff --git a/ruby/.rubocop.yml b/ruby/.rubocop.yml
index 53b654cc3..4408434bf 100644
--- a/ruby/.rubocop.yml
+++ b/ruby/.rubocop.yml
@@ -1,6 +1,7 @@
inherit_from: .rubocop_todo.yml
AllCops:
+ TargetRubyVersion: 2.5
Exclude:
- 'tmp/**/*'
- 'vendor/**/*'
@@ -12,3 +13,6 @@ Style/NumericPredicate:
Style/RedundantBegin:
Enabled: false
+
+Naming/RescuedExceptionsVariableName:
+ Enabled: false
diff --git a/ruby/Gemfile b/ruby/Gemfile
index c111744a1..8331b74ee 100644
--- a/ruby/Gemfile
+++ b/ruby/Gemfile
@@ -1,17 +1,17 @@
source 'https://rubygems.org'
# Require bundler >= 1.16.5 to avoid this bug: https://github.com/bundler/bundler/issues/6537
-gem 'bundler', '>= 1.16.5'
+gem 'bundler', '>= 1.17.3'
gem 'rugged', '~> 0.28'
gem 'github-linguist', '~> 6.1', require: 'linguist'
gem 'gitlab-markup', '~> 1.7.0'
-gem 'gitaly-proto', '~> 1.22.0'
-gem 'activesupport', '~> 5.0.2'
+gem 'activesupport', '~> 5.1.7'
+gem 'gitaly-proto', '~> 1.27.0'
gem 'rdoc', '~> 4.2'
gem 'gitlab-gollum-lib', '~> 4.2.7.7', require: false
gem 'gitlab-gollum-rugged_adapter', '~> 0.4.4.2', require: false
-gem 'grpc', '~> 1.15.0'
+gem 'grpc', '~> 1.19.0'
gem 'sentry-raven', '~> 2.9.0', require: false
gem 'faraday', '~> 0.12'
gem 'rbtrace', require: false
@@ -20,10 +20,10 @@ gem 'rbtrace', require: false
# This version needs to be in sync with GitLab CE/EE
gem 'licensee', '~> 8.9.0'
-gem 'google-protobuf', '~> 3.6'
+gem 'google-protobuf', '~> 3.7.1'
group :development, :test do
- gem 'rubocop', '~> 0.50', require: false
+ gem 'rubocop', '~> 0.68', require: false
gem 'rspec', require: false
gem 'rspec-parameterized', require: false
gem 'timecop', require: false
diff --git a/ruby/Gemfile.lock b/ruby/Gemfile.lock
index d3a8caad8..83bf0a938 100644
--- a/ruby/Gemfile.lock
+++ b/ruby/Gemfile.lock
@@ -2,7 +2,7 @@ GEM
remote: https://rubygems.org/
specs:
abstract_type (0.0.7)
- activesupport (5.0.7.2)
+ activesupport (5.1.7)
concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (>= 0.7, < 2)
minitest (~> 5.1)
@@ -20,7 +20,7 @@ GEM
concord (0.1.5)
adamantium (~> 0.2.0)
equalizer (~> 0.0.9)
- concurrent-ruby (1.1.3)
+ concurrent-ruby (1.1.5)
crack (0.4.3)
safe_yaml (~> 1.0.0)
crass (1.0.4)
@@ -36,7 +36,7 @@ GEM
ffi (1.10.0)
gemojione (3.3.0)
json
- gitaly-proto (1.22.0)
+ gitaly-proto (1.27.0)
grpc (~> 1.0)
github-linguist (6.4.1)
charlock_holmes (~> 0.7.6)
@@ -66,13 +66,14 @@ GEM
google-protobuf (3.7.1)
googleapis-common-protos-types (1.0.4)
google-protobuf (~> 3.0)
- grpc (1.15.0)
+ grpc (1.19.0)
google-protobuf (~> 3.1)
googleapis-common-protos-types (~> 1.0.0)
hashdiff (0.3.8)
i18n (1.6.0)
concurrent-ruby (~> 1.0)
ice_nine (0.11.2)
+ jaro_winkler (1.5.2)
json (2.2.0)
licensee (8.9.2)
rugged (~> 0.24)
@@ -88,16 +89,15 @@ GEM
msgpack (1.2.6)
multi_json (1.13.1)
multipart-post (2.0.0)
- nokogiri (1.10.1)
+ nokogiri (1.10.3)
mini_portile2 (~> 2.4.0)
nokogumbo (1.5.0)
nokogiri
optimist (3.0.0)
- parallel (1.12.1)
+ parallel (1.17.0)
parser (2.5.3.0)
ast (~> 2.4.0)
posix-spawn (0.3.13)
- powerpack (0.1.2)
proc_to_ast (0.1.0)
coderay
parser
@@ -133,13 +133,13 @@ GEM
rspec (>= 2.13, < 4)
unparser
rspec-support (3.7.1)
- rubocop (0.54.0)
+ rubocop (0.68.1)
+ jaro_winkler (~> 1.5.1)
parallel (~> 1.10)
- parser (>= 2.5)
- powerpack (~> 0.1)
+ parser (>= 2.5, != 2.5.1.1)
rainbow (>= 2.2.2, < 4.0)
ruby-progressbar (~> 1.7)
- unicode-display_width (~> 1.0, >= 1.0.1)
+ unicode-display_width (>= 1.4.0, < 1.6)
ruby-progressbar (1.10.0)
rugged (0.28.1)
safe_yaml (1.0.4)
@@ -159,7 +159,7 @@ GEM
timecop (0.9.1)
tzinfo (1.2.5)
thread_safe (~> 0.1)
- unicode-display_width (1.4.0)
+ unicode-display_width (1.5.0)
unparser (0.2.8)
abstract_type (~> 0.0.7)
adamantium (~> 0.2.0)
@@ -178,17 +178,17 @@ PLATFORMS
ruby
DEPENDENCIES
- activesupport (~> 5.0.2)
- bundler (>= 1.16.5)
+ activesupport (~> 5.1.7)
+ bundler (>= 1.17.3)
factory_bot
faraday (~> 0.12)
- gitaly-proto (~> 1.22.0)
+ gitaly-proto (~> 1.27.0)
github-linguist (~> 6.1)
gitlab-gollum-lib (~> 4.2.7.7)
gitlab-gollum-rugged_adapter (~> 0.4.4.2)
gitlab-markup (~> 1.7.0)
- google-protobuf (~> 3.6)
- grpc (~> 1.15.0)
+ google-protobuf (~> 3.7.1)
+ grpc (~> 1.19.0)
licensee (~> 8.9.0)
listen (~> 0.5.0)
pry (~> 0.12.2)
@@ -196,7 +196,7 @@ DEPENDENCIES
rdoc (~> 4.2)
rspec
rspec-parameterized
- rubocop (~> 0.50)
+ rubocop (~> 0.68)
rugged (~> 0.28)
sentry-raven (~> 2.9.0)
simplecov (~> 0.9.0)
diff --git a/ruby/lib/gitaly_server/operations_service.rb b/ruby/lib/gitaly_server/operations_service.rb
index 64b52f6fb..4a3478419 100644
--- a/ruby/lib/gitaly_server/operations_service.rb
+++ b/ruby/lib/gitaly_server/operations_service.rb
@@ -201,6 +201,40 @@ module GitalyServer
Gitaly::UserRevertResponse.new(pre_receive_error: set_utf8!(e.message))
end
+ def user_rebase_confirmable(session, call)
+ Enumerator.new do |y|
+ header = session.next.header
+
+ repo = Gitlab::Git::Repository.from_gitaly(header.repository, call)
+ user = Gitlab::Git::User.from_gitaly(header.user)
+ remote_repository = Gitlab::Git::GitalyRemoteRepository.new(header.remote_repository, call)
+
+ begin
+ repo.rebase(
+ user,
+ header.rebase_id,
+ branch: header.branch,
+ branch_sha: header.branch_sha,
+ remote_repository: remote_repository,
+ remote_branch: header.remote_branch
+ ) do |rebase_sha|
+ y << Gitaly::UserRebaseConfirmableResponse.new(rebase_sha: rebase_sha)
+
+ raise GRPC::FailedPrecondition.new('rebase aborted by client') unless session.next.apply
+ end
+
+ y << Gitaly::UserRebaseConfirmableResponse.new(rebase_applied: true)
+ rescue Gitlab::Git::PreReceiveError => e
+ Gitaly::UserRebaseConfirmableResponse.new(pre_receive_error: set_utf8!(e.message))
+ rescue Gitlab::Git::Repository::GitError => e
+ Gitaly::UserRebaseConfirmableResponse.new(git_error: set_utf8!(e.message))
+ rescue Gitlab::Git::CommitError => e
+ raise GRPC::FailedPrecondition.new(e.message)
+ end
+ end
+ end
+
+ # DEPRECATED: https://gitlab.com/gitlab-org/gitaly/issues/1628
def user_rebase(request, call)
repo = Gitlab::Git::Repository.from_gitaly(request.repository, call)
user = Gitlab::Git::User.from_gitaly(request.user)
diff --git a/ruby/lib/gitaly_server/remote_service.rb b/ruby/lib/gitaly_server/remote_service.rb
index 983c4c786..39cc6e60e 100644
--- a/ruby/lib/gitaly_server/remote_service.rb
+++ b/ruby/lib/gitaly_server/remote_service.rb
@@ -40,25 +40,5 @@ module GitalyServer
Gitaly::UpdateRemoteMirrorResponse.new
end
-
- private
-
- def parse_refmaps(refmaps)
- return unless refmaps.present?
-
- parsed_refmaps = refmaps.map do |refmap|
- next unless refmap.present?
-
- refmap_spec = refmap.to_sym
-
- if Gitlab::Git::RepositoryMirroring::REFMAPS.has_key?(refmap_spec)
- refmap_spec
- else
- refmap
- end
- end
-
- parsed_refmaps.compact.presence
- end
end
end
diff --git a/ruby/lib/gitaly_server/repository_service.rb b/ruby/lib/gitaly_server/repository_service.rb
index 23e55b352..d01ac7e96 100644
--- a/ruby/lib/gitaly_server/repository_service.rb
+++ b/ruby/lib/gitaly_server/repository_service.rb
@@ -23,19 +23,37 @@ module GitalyServer
def fetch_remote(request, call)
gitlab_projects = Gitlab::Git::GitlabProjects.from_gitaly(request.repository, call)
+ remote_name = request.remote
+
+ repository = nil
+
+ if request.remote_params
+ params = request.remote_params
+ repository = Gitlab::Git::Repository.from_gitaly(request.repository, call)
+
+ mirror_refmaps = parse_refmaps(params.mirror_refmaps)
+
+ repository.add_remote(params.name, params.url, mirror_refmap: mirror_refmaps)
+ remote_name = params.name
+ end
+
success = Gitlab::Git::SshAuth.from_gitaly(request).setup do |env|
- gitlab_projects.fetch_remote(
- request.remote,
- request.timeout,
- force: request.force,
- tags: !request.no_tags,
- env: env
- )
+ Gitlab::Git::HttpAuth.from_gitaly(request, call) do
+ gitlab_projects.fetch_remote(
+ remote_name,
+ request.timeout,
+ force: request.force,
+ tags: !request.no_tags,
+ env: env
+ )
+ end
end
raise GRPC::Unknown.new("Fetching remote #{request.remote} failed: #{gitlab_projects.output}") unless success
Gitaly::FetchRemoteResponse.new
+ ensure
+ repository&.remove_remote(remote_name)
end
def write_config(request, call)
@@ -84,11 +102,11 @@ module GitalyServer
private
OPERATION_MAP = {
- added: Gitaly::GetRawChangesResponse::RawChange::Operation::ADDED,
- copied: Gitaly::GetRawChangesResponse::RawChange::Operation::COPIED,
- deleted: Gitaly::GetRawChangesResponse::RawChange::Operation::DELETED,
- modified: Gitaly::GetRawChangesResponse::RawChange::Operation::MODIFIED,
- renamed: Gitaly::GetRawChangesResponse::RawChange::Operation::RENAMED,
+ added: Gitaly::GetRawChangesResponse::RawChange::Operation::ADDED,
+ copied: Gitaly::GetRawChangesResponse::RawChange::Operation::COPIED,
+ deleted: Gitaly::GetRawChangesResponse::RawChange::Operation::DELETED,
+ modified: Gitaly::GetRawChangesResponse::RawChange::Operation::MODIFIED,
+ renamed: Gitaly::GetRawChangesResponse::RawChange::Operation::RENAMED,
type_changed: Gitaly::GetRawChangesResponse::RawChange::Operation::TYPE_CHANGED
}.freeze
diff --git a/ruby/lib/gitaly_server/sentry.rb b/ruby/lib/gitaly_server/sentry.rb
index b736cfe34..bb6d9100f 100644
--- a/ruby/lib/gitaly_server/sentry.rb
+++ b/ruby/lib/gitaly_server/sentry.rb
@@ -59,4 +59,5 @@ Raven.configure do |config|
config.release = ENV['GITALY_VERSION'].presence
config.sanitize_fields = %w[gitaly-servers authorization]
config.processors += [GitalyServer::Sentry::URLSanitizer]
+ config.current_environment = ENV['SENTRY_ENVIRONMENT'].presence
end
diff --git a/ruby/lib/gitaly_server/utils.rb b/ruby/lib/gitaly_server/utils.rb
index 925656d97..e81e148e2 100644
--- a/ruby/lib/gitaly_server/utils.rb
+++ b/ruby/lib/gitaly_server/utils.rb
@@ -1,7 +1,7 @@
module GitalyServer
module Utils
# See internal/logsanitizer/url.go for credits and explanation.
- URL_HOST_PATTERN = %r{([a-z][a-z0-9+\-.]*://)([a-z0-9\-._~%!$&'()*+,;=:]+@)([a-z0-9\-._~%]+|\[[a-z0-9\-._~%!$&'()*+,;=:]+\])}i
+ URL_HOST_PATTERN = %r{([a-z][a-z0-9+\-.]*://)?([a-z0-9\-._~%!$&'()*+,;=:]+@)([a-z0-9\-._~%]+|\[[a-z0-9\-._~%!$&'()*+,;=:]+\])}i.freeze
def gitaly_commit_from_rugged(rugged_commit)
message_split = rugged_commit.message.b.split("\n", 2)
@@ -73,5 +73,21 @@ module GitalyServer
def sanitize_url(str)
str.gsub(URL_HOST_PATTERN, '\1[FILTERED]@\3\4')
end
+
+ def parse_refmaps(refmaps)
+ return unless refmaps.present?
+
+ parsed_refmaps = refmaps.select(&:present?).map do |refmap|
+ refmap_spec = refmap.to_sym
+
+ if Gitlab::Git::RepositoryMirroring::REFMAPS.key?(refmap_spec)
+ refmap_spec
+ else
+ refmap
+ end
+ end
+
+ parsed_refmaps.presence
+ end
end
end
diff --git a/ruby/lib/gitlab/git.rb b/ruby/lib/gitlab/git.rb
index 09b6e8b37..3688b2be5 100644
--- a/ruby/lib/gitlab/git.rb
+++ b/ruby/lib/gitlab/git.rb
@@ -45,7 +45,7 @@ module Gitlab
# See http://stackoverflow.com/a/40884093/1856239 and
# https://github.com/git/git/blob/3ad8b5bf26362ac67c9020bf8c30eee54a84f56d/cache.h#L1011-L1012
EMPTY_TREE_ID = '4b825dc642cb6eb9a060e54bf8d69288fbee4904'.freeze
- BLANK_SHA = ('0' * 40).freeze
+ BLANK_SHA = '0' * 40
TAG_REF_PREFIX = "refs/tags/".freeze
BRANCH_REF_PREFIX = "refs/heads/".freeze
diff --git a/ruby/lib/gitlab/git/gitaly_remote_repository.rb b/ruby/lib/gitlab/git/gitaly_remote_repository.rb
index 6fa6657d0..237ca5472 100644
--- a/ruby/lib/gitlab/git/gitaly_remote_repository.rb
+++ b/ruby/lib/gitlab/git/gitaly_remote_repository.rb
@@ -2,7 +2,7 @@ module Gitlab
module Git
class GitalyRemoteRepository < RemoteRepository
CLIENT_NAME = 'gitaly-ruby'.freeze
- PEM_REXP = /[-]+BEGIN CERTIFICATE[-]+.+?[-]+END CERTIFICATE[-]+/m
+ PEM_REXP = /[-]+BEGIN CERTIFICATE[-]+.+?[-]+END CERTIFICATE[-]+/m.freeze
attr_reader :gitaly_client
diff --git a/ruby/lib/gitlab/git/gitlab_projects.rb b/ruby/lib/gitlab/git/gitlab_projects.rb
index 3c7453961..b02cdc5ec 100644
--- a/ruby/lib/gitlab/git/gitlab_projects.rb
+++ b/ruby/lib/gitlab/git/gitlab_projects.rb
@@ -112,15 +112,6 @@ module Gitlab
false
end
- def mask_password_in_url(url)
- result = URI(url)
- result.password = "*****" unless result.password.nil?
- result.user = "*****" unless result.user.nil? # it's needed for oauth access_token
- result
- rescue
- url
- end
-
def remove_origin_in_repo
cmd = %W(#{Gitlab.config.git.bin_path} remote rm origin)
run(cmd, repository_absolute_path)
diff --git a/ruby/lib/gitlab/git/http_auth.rb b/ruby/lib/gitlab/git/http_auth.rb
new file mode 100644
index 000000000..de4e7287e
--- /dev/null
+++ b/ruby/lib/gitlab/git/http_auth.rb
@@ -0,0 +1,33 @@
+module Gitlab
+ module Git
+ class HttpAuth
+ def self.from_gitaly(request, call)
+ params = request.remote_params
+
+ return yield unless params.present?
+ return yield unless params.http_authorization_header.present?
+
+ repo = Gitlab::Git::Repository.from_gitaly(request.repository, call)
+
+ validate_remote_params(params)
+
+ key = "http.#{params.url}.extraHeader"
+ repo.rugged.config[key] = "Authorization: #{params.http_authorization_header}"
+
+ begin
+ yield
+ ensure
+ repo.rugged.config.delete(key)
+ end
+ end
+
+ def self.validate_remote_params(remote_params)
+ begin
+ URI.parse(remote_params.url)
+ rescue URI::Error
+ raise GRPC::InvalidArgument, 'invalid remote url'
+ end
+ end
+ end
+ end
+end
diff --git a/ruby/lib/gitlab/git/operation_service.rb b/ruby/lib/gitlab/git/operation_service.rb
index 74951ade0..2b3355c0d 100644
--- a/ruby/lib/gitlab/git/operation_service.rb
+++ b/ruby/lib/gitlab/git/operation_service.rb
@@ -73,14 +73,11 @@ module Gitlab
# it would be created from `start_branch_name`.
# If `start_repository` is passed, and the branch doesn't exist,
# it would try to find the commits from it instead of current repository.
- def with_branch(
- branch_name,
- start_branch_name: nil,
- start_repository: repository,
- force: false,
- &block
- )
-
+ def with_branch(branch_name,
+ start_branch_name: nil,
+ start_repository: repository,
+ force: false,
+ &block)
Gitlab::Git.check_namespace!(start_repository)
start_repository = RemoteRepository.new(start_repository) unless start_repository.is_a?(RemoteRepository)
diff --git a/ruby/lib/gitlab/git/repository.rb b/ruby/lib/gitlab/git/repository.rb
index 030bece0b..f511b3ef6 100644
--- a/ruby/lib/gitlab/git/repository.rb
+++ b/ruby/lib/gitlab/git/repository.rb
@@ -61,37 +61,6 @@ module Gitlab
# Equivalent to `git --git-path=#{repo_path} init [--bare]`
repo = Rugged::Repository.init_at(repo_path, true)
repo.close
-
- # TODO: stop symlinking to the old hooks location in or after GitLab 12.0.
- # https://gitlab.com/gitlab-org/gitaly/issues/1392
- create_hooks(repo_path, Gitlab::Git::Hook.legacy_hooks_directory)
- end
-
- def create_hooks(repo_path, global_hooks_path)
- local_hooks_path = File.join(repo_path, 'hooks')
- real_local_hooks_path = :not_found
-
- begin
- real_local_hooks_path = File.realpath(local_hooks_path)
- rescue Errno::ENOENT
- # real_local_hooks_path == :not_found
- end
-
- # Do nothing if hooks already exist
- unless real_local_hooks_path == File.realpath(global_hooks_path)
- if File.exist?(local_hooks_path)
- # Move the existing hooks somewhere safe
- FileUtils.mv(
- local_hooks_path,
- "#{local_hooks_path}.old.#{Time.now.to_i}"
- )
- end
-
- # Create the hooks symlink
- FileUtils.ln_sf(global_hooks_path, local_hooks_path)
- end
-
- true
end
end
@@ -406,6 +375,8 @@ module Gitlab
rebase_sha = run_git!(%w[rev-parse HEAD], chdir: rebase_path, env: env).strip
+ yield rebase_sha if block_given?
+
update_branch(branch, user: user, newrev: rebase_sha, oldrev: branch_sha)
rebase_sha
@@ -426,7 +397,7 @@ module Gitlab
with_worktree(squash_path, branch, sparse_checkout_files: diff_files, env: env) do
# Apply diff of the `diff_range` to the worktree
diff = run_git!(%W[diff --binary #{diff_range}])
- run_git!(%w[apply --index --whitespace=nowarn], chdir: squash_path, env: env, include_stderr: true) do |stdin|
+ run_git!(%w[apply --index --3way --whitespace=nowarn], chdir: squash_path, env: env, include_stderr: true) do |stdin|
stdin.binmode
stdin.write(diff)
end
@@ -488,12 +459,9 @@ module Gitlab
end
# rubocop:disable Metrics/ParameterLists
- def multi_action(
- user, branch_name:, message:, actions:,
- author_email: nil, author_name: nil,
- start_branch_name: nil, start_repository: self, force: false
- )
-
+ def multi_action(user, branch_name:, message:, actions:,
+ author_email: nil, author_name: nil,
+ start_branch_name: nil, start_repository: self, force: false)
OperationService.new(user, self).with_branch(
branch_name,
start_branch_name: start_branch_name,
diff --git a/ruby/spec/lib/gitaly_server/exception_sanitizer_interceptor_spec.rb b/ruby/spec/lib/gitaly_server/exception_sanitizer_interceptor_spec.rb
index 06fabffc8..2e5516173 100644
--- a/ruby/spec/lib/gitaly_server/exception_sanitizer_interceptor_spec.rb
+++ b/ruby/spec/lib/gitaly_server/exception_sanitizer_interceptor_spec.rb
@@ -17,6 +17,15 @@ describe GitalyServer::ExceptionSanitizerInterceptor do
end
end
+ context 'with incomplete url in exception' do
+ let(:ex) { "unable to look up user:pass@non-existent.org (port 9418)" }
+ let(:ex_sanitized_message) { "unable to look up [FILTERED]@non-existent.org (port 9418)" }
+
+ it 'sanitizes exception message' do
+ expect { subject }.to raise_error(ex_sanitized_message)
+ end
+ end
+
context 'GRPC::BadStatus exception' do
let(:ex) { GRPC::Unknown.new(super().message) }
diff --git a/ruby/spec/lib/gitlab/git/repository_spec.rb b/ruby/spec/lib/gitlab/git/repository_spec.rb
index 962be8fc6..57b88ef59 100644
--- a/ruby/spec/lib/gitlab/git/repository_spec.rb
+++ b/ruby/spec/lib/gitlab/git/repository_spec.rb
@@ -37,53 +37,6 @@ describe Gitlab::Git::Repository do # rubocop:disable Metrics/BlockLength
end
end
- describe '.create_hooks' do
- let(:repo_path) { File.join(storage_path, 'hook-test.git') }
- let(:hooks_dir) { File.join(repo_path, 'hooks') }
- let(:target_hooks_dir) { Gitlab::Git::Hook.legacy_hooks_directory }
- let(:existing_target) { File.join(repo_path, 'foobar') }
-
- before do
- GitlabShellHelper.setup_gitlab_shell
-
- FileUtils.rm_rf(repo_path)
- FileUtils.mkdir_p(repo_path)
- end
-
- context 'hooks is a directory' do
- let(:existing_file) { File.join(hooks_dir, 'my-file') }
-
- before do
- FileUtils.mkdir_p(hooks_dir)
- FileUtils.touch(existing_file)
- described_class.create_hooks(repo_path, target_hooks_dir)
- end
-
- it { expect(File.readlink(hooks_dir)).to eq(target_hooks_dir) }
- it { expect(Dir[File.join(repo_path, "hooks.old.*/my-file")].count).to eq(1) }
- end
-
- context 'hooks is a valid symlink' do
- before do
- FileUtils.mkdir_p existing_target
- File.symlink(existing_target, hooks_dir)
- described_class.create_hooks(repo_path, target_hooks_dir)
- end
-
- it { expect(File.readlink(hooks_dir)).to eq(target_hooks_dir) }
- end
-
- context 'hooks is a broken symlink' do
- before do
- FileUtils.rm_f(existing_target)
- File.symlink(existing_target, hooks_dir)
- described_class.create_hooks(repo_path, target_hooks_dir)
- end
-
- it { expect(File.readlink(hooks_dir)).to eq(target_hooks_dir) }
- end
- end
-
describe "Respond to" do
subject { repository }
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/blob.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/blob.pb.go
index f776e50df..c37faa72e 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/blob.pb.go
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/blob.pb.go
@@ -38,7 +38,7 @@ func (m *GetBlobRequest) Reset() { *m = GetBlobRequest{} }
func (m *GetBlobRequest) String() string { return proto.CompactTextString(m) }
func (*GetBlobRequest) ProtoMessage() {}
func (*GetBlobRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_blob_4ab5662dde31e5b6, []int{0}
+ return fileDescriptor_blob_b206716c944087ca, []int{0}
}
func (m *GetBlobRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetBlobRequest.Unmarshal(m, b)
@@ -95,7 +95,7 @@ func (m *GetBlobResponse) Reset() { *m = GetBlobResponse{} }
func (m *GetBlobResponse) String() string { return proto.CompactTextString(m) }
func (*GetBlobResponse) ProtoMessage() {}
func (*GetBlobResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_blob_4ab5662dde31e5b6, []int{1}
+ return fileDescriptor_blob_b206716c944087ca, []int{1}
}
func (m *GetBlobResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetBlobResponse.Unmarshal(m, b)
@@ -151,7 +151,7 @@ func (m *GetBlobsRequest) Reset() { *m = GetBlobsRequest{} }
func (m *GetBlobsRequest) String() string { return proto.CompactTextString(m) }
func (*GetBlobsRequest) ProtoMessage() {}
func (*GetBlobsRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_blob_4ab5662dde31e5b6, []int{2}
+ return fileDescriptor_blob_b206716c944087ca, []int{2}
}
func (m *GetBlobsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetBlobsRequest.Unmarshal(m, b)
@@ -204,7 +204,7 @@ func (m *GetBlobsRequest_RevisionPath) Reset() { *m = GetBlobsRequest_Re
func (m *GetBlobsRequest_RevisionPath) String() string { return proto.CompactTextString(m) }
func (*GetBlobsRequest_RevisionPath) ProtoMessage() {}
func (*GetBlobsRequest_RevisionPath) Descriptor() ([]byte, []int) {
- return fileDescriptor_blob_4ab5662dde31e5b6, []int{2, 0}
+ return fileDescriptor_blob_b206716c944087ca, []int{2, 0}
}
func (m *GetBlobsRequest_RevisionPath) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetBlobsRequest_RevisionPath.Unmarshal(m, b)
@@ -258,7 +258,7 @@ func (m *GetBlobsResponse) Reset() { *m = GetBlobsResponse{} }
func (m *GetBlobsResponse) String() string { return proto.CompactTextString(m) }
func (*GetBlobsResponse) ProtoMessage() {}
func (*GetBlobsResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_blob_4ab5662dde31e5b6, []int{3}
+ return fileDescriptor_blob_b206716c944087ca, []int{3}
}
func (m *GetBlobsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetBlobsResponse.Unmarshal(m, b)
@@ -340,7 +340,7 @@ func (m *LFSPointer) Reset() { *m = LFSPointer{} }
func (m *LFSPointer) String() string { return proto.CompactTextString(m) }
func (*LFSPointer) ProtoMessage() {}
func (*LFSPointer) Descriptor() ([]byte, []int) {
- return fileDescriptor_blob_4ab5662dde31e5b6, []int{4}
+ return fileDescriptor_blob_b206716c944087ca, []int{4}
}
func (m *LFSPointer) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LFSPointer.Unmarshal(m, b)
@@ -394,7 +394,7 @@ func (m *NewBlobObject) Reset() { *m = NewBlobObject{} }
func (m *NewBlobObject) String() string { return proto.CompactTextString(m) }
func (*NewBlobObject) ProtoMessage() {}
func (*NewBlobObject) Descriptor() ([]byte, []int) {
- return fileDescriptor_blob_4ab5662dde31e5b6, []int{5}
+ return fileDescriptor_blob_b206716c944087ca, []int{5}
}
func (m *NewBlobObject) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_NewBlobObject.Unmarshal(m, b)
@@ -447,7 +447,7 @@ func (m *GetLFSPointersRequest) Reset() { *m = GetLFSPointersRequest{} }
func (m *GetLFSPointersRequest) String() string { return proto.CompactTextString(m) }
func (*GetLFSPointersRequest) ProtoMessage() {}
func (*GetLFSPointersRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_blob_4ab5662dde31e5b6, []int{6}
+ return fileDescriptor_blob_b206716c944087ca, []int{6}
}
func (m *GetLFSPointersRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetLFSPointersRequest.Unmarshal(m, b)
@@ -492,7 +492,7 @@ func (m *GetLFSPointersResponse) Reset() { *m = GetLFSPointersResponse{}
func (m *GetLFSPointersResponse) String() string { return proto.CompactTextString(m) }
func (*GetLFSPointersResponse) ProtoMessage() {}
func (*GetLFSPointersResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_blob_4ab5662dde31e5b6, []int{7}
+ return fileDescriptor_blob_b206716c944087ca, []int{7}
}
func (m *GetLFSPointersResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetLFSPointersResponse.Unmarshal(m, b)
@@ -535,7 +535,7 @@ func (m *GetNewLFSPointersRequest) Reset() { *m = GetNewLFSPointersReque
func (m *GetNewLFSPointersRequest) String() string { return proto.CompactTextString(m) }
func (*GetNewLFSPointersRequest) ProtoMessage() {}
func (*GetNewLFSPointersRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_blob_4ab5662dde31e5b6, []int{8}
+ return fileDescriptor_blob_b206716c944087ca, []int{8}
}
func (m *GetNewLFSPointersRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetNewLFSPointersRequest.Unmarshal(m, b)
@@ -601,7 +601,7 @@ func (m *GetNewLFSPointersResponse) Reset() { *m = GetNewLFSPointersResp
func (m *GetNewLFSPointersResponse) String() string { return proto.CompactTextString(m) }
func (*GetNewLFSPointersResponse) ProtoMessage() {}
func (*GetNewLFSPointersResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_blob_4ab5662dde31e5b6, []int{9}
+ return fileDescriptor_blob_b206716c944087ca, []int{9}
}
func (m *GetNewLFSPointersResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetNewLFSPointersResponse.Unmarshal(m, b)
@@ -640,7 +640,7 @@ func (m *GetAllLFSPointersRequest) Reset() { *m = GetAllLFSPointersReque
func (m *GetAllLFSPointersRequest) String() string { return proto.CompactTextString(m) }
func (*GetAllLFSPointersRequest) ProtoMessage() {}
func (*GetAllLFSPointersRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_blob_4ab5662dde31e5b6, []int{10}
+ return fileDescriptor_blob_b206716c944087ca, []int{10}
}
func (m *GetAllLFSPointersRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetAllLFSPointersRequest.Unmarshal(m, b)
@@ -685,7 +685,7 @@ func (m *GetAllLFSPointersResponse) Reset() { *m = GetAllLFSPointersResp
func (m *GetAllLFSPointersResponse) String() string { return proto.CompactTextString(m) }
func (*GetAllLFSPointersResponse) ProtoMessage() {}
func (*GetAllLFSPointersResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_blob_4ab5662dde31e5b6, []int{11}
+ return fileDescriptor_blob_b206716c944087ca, []int{11}
}
func (m *GetAllLFSPointersResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetAllLFSPointersResponse.Unmarshal(m, b)
@@ -1073,49 +1073,48 @@ var _BlobService_serviceDesc = grpc.ServiceDesc{
Metadata: "blob.proto",
}
-func init() { proto.RegisterFile("blob.proto", fileDescriptor_blob_4ab5662dde31e5b6) }
-
-var fileDescriptor_blob_4ab5662dde31e5b6 = []byte{
- // 641 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x55, 0xcd, 0x4e, 0xdb, 0x4c,
- 0x14, 0xfd, 0x1c, 0x93, 0x90, 0xdc, 0x04, 0x3e, 0x3a, 0x6a, 0xc1, 0x58, 0x2d, 0x32, 0x51, 0x17,
- 0xde, 0x10, 0x50, 0xaa, 0x6e, 0xba, 0x40, 0x82, 0x05, 0x08, 0x51, 0x01, 0x9a, 0xec, 0xaa, 0x4a,
- 0x91, 0x8d, 0x27, 0x30, 0xd5, 0xc4, 0xe3, 0x7a, 0x06, 0x10, 0x7d, 0x91, 0xae, 0xfb, 0x0c, 0x7d,
- 0x87, 0x3e, 0x4f, 0xd5, 0x27, 0xa8, 0x66, 0xfc, 0x9b, 0xd8, 0x74, 0xe3, 0x76, 0x77, 0xe7, 0xce,
- 0xfd, 0x39, 0xe7, 0xde, 0xe3, 0x31, 0x80, 0xcf, 0xb8, 0x3f, 0x8a, 0x62, 0x2e, 0x39, 0xea, 0xdc,
- 0x50, 0xe9, 0xb1, 0x47, 0x7b, 0x20, 0x6e, 0xbd, 0x98, 0x04, 0x89, 0x77, 0x28, 0x61, 0xfd, 0x94,
- 0xc8, 0x63, 0xc6, 0x7d, 0x4c, 0x3e, 0xdf, 0x11, 0x21, 0xd1, 0x18, 0x20, 0x26, 0x11, 0x17, 0x54,
- 0xf2, 0xf8, 0xd1, 0x32, 0x1c, 0xc3, 0xed, 0x8f, 0xd1, 0x28, 0x49, 0x1e, 0xe1, 0xfc, 0x06, 0x97,
- 0xa2, 0xd0, 0x06, 0x98, 0x9c, 0x06, 0x56, 0xcb, 0x31, 0xdc, 0x1e, 0x56, 0x26, 0x7a, 0x0e, 0x6d,
- 0x46, 0xe7, 0x54, 0x5a, 0xa6, 0x63, 0xb8, 0x26, 0x4e, 0x0e, 0xef, 0x3a, 0xbf, 0xbe, 0xba, 0xad,
- 0x6e, 0x6b, 0x78, 0x0e, 0xff, 0xe7, 0x5d, 0x45, 0xc4, 0x43, 0x41, 0x10, 0x82, 0x15, 0x41, 0xbf,
- 0x10, 0xdd, 0xd0, 0xc4, 0xda, 0x56, 0xbe, 0xc0, 0x93, 0x9e, 0xae, 0x3b, 0xc0, 0xda, 0xce, 0x5a,
- 0x99, 0x79, 0xab, 0xe1, 0x4f, 0x23, 0xaf, 0x26, 0x9a, 0x90, 0x38, 0x87, 0xf5, 0x98, 0xdc, 0x53,
- 0x41, 0x79, 0x38, 0x8d, 0x3c, 0x79, 0x2b, 0xac, 0x96, 0x63, 0xba, 0xfd, 0xf1, 0xeb, 0x2c, 0x6f,
- 0xa9, 0xc9, 0x08, 0xa7, 0xd1, 0x57, 0x9e, 0xbc, 0xc5, 0x6b, 0x71, 0xe9, 0x24, 0xea, 0xf9, 0xdb,
- 0x87, 0x30, 0x28, 0x27, 0x21, 0x1b, 0xba, 0x59, 0x9a, 0x06, 0xd9, 0xc3, 0xf9, 0x59, 0x91, 0x57,
- 0x28, 0x32, 0xf2, 0xca, 0xce, 0xe7, 0xf7, 0xdd, 0x80, 0x8d, 0x02, 0x4d, 0xd3, 0x09, 0xa2, 0x5d,
- 0x18, 0x50, 0x31, 0x15, 0x77, 0xfe, 0x9c, 0x07, 0x77, 0x8c, 0x58, 0x2b, 0x8e, 0xe1, 0x76, 0x71,
- 0x9f, 0x8a, 0x49, 0xe6, 0x52, 0x85, 0xe6, 0x3c, 0x20, 0x56, 0xdb, 0x31, 0xdc, 0x36, 0xd6, 0xf6,
- 0x02, 0xfa, 0xce, 0x13, 0xe8, 0x57, 0x0b, 0xf4, 0xc3, 0x13, 0x80, 0xf7, 0x27, 0x93, 0x2b, 0x4e,
- 0x43, 0x49, 0xe2, 0x06, 0x0b, 0x3f, 0x83, 0xb5, 0x0b, 0xf2, 0xa0, 0xc8, 0x5f, 0xfa, 0x9f, 0xc8,
- 0xb5, 0xac, 0x2d, 0x55, 0x95, 0x64, 0x06, 0xc9, 0x2c, 0x41, 0x0a, 0xe1, 0xc5, 0x29, 0x91, 0x05,
- 0xaa, 0x46, 0x02, 0xda, 0x86, 0xae, 0xfa, 0xde, 0xa6, 0x34, 0x48, 0xa4, 0xd3, 0xc3, 0xab, 0xea,
- 0x7c, 0x16, 0x88, 0x7c, 0x71, 0x97, 0xb0, 0xb9, 0xdc, 0x2f, 0xdd, 0xde, 0x5b, 0x18, 0xb0, 0x99,
- 0x98, 0x46, 0xa9, 0xdf, 0x32, 0xb4, 0xf6, 0xf2, 0x96, 0x45, 0x0a, 0xee, 0xb3, 0x99, 0xc8, 0xd2,
- 0x87, 0x3f, 0x0c, 0xb0, 0x4e, 0x89, 0xbc, 0x20, 0x0f, 0x7f, 0x89, 0x44, 0x79, 0xa9, 0xc9, 0x1a,
- 0x8a, 0xa5, 0x2e, 0x88, 0xba, 0x9d, 0x8a, 0x1a, 0xbd, 0x04, 0x08, 0xb9, 0x9c, 0xd2, 0x70, 0xea,
- 0x31, 0x96, 0x6a, 0xa7, 0x1b, 0x72, 0x79, 0x16, 0x1e, 0x31, 0x86, 0x76, 0xa0, 0x9f, 0xde, 0xc6,
- 0x64, 0x26, 0xac, 0xb6, 0x63, 0xba, 0x03, 0xdc, 0xd3, 0xd7, 0x98, 0xcc, 0x8a, 0xc9, 0x60, 0xd8,
- 0xae, 0xe1, 0xd1, 0x6c, 0x38, 0xb1, 0x9e, 0xcd, 0x11, 0x63, 0xff, 0x7e, 0x36, 0x4b, 0x3c, 0x96,
- 0x7b, 0x36, 0xe2, 0x31, 0xfe, 0x66, 0x42, 0x5f, 0xc9, 0x7d, 0x42, 0xe2, 0x7b, 0x7a, 0x4d, 0xd0,
- 0x21, 0xac, 0xa6, 0x5f, 0x3f, 0xda, 0x5c, 0x7a, 0x9c, 0x52, 0x7a, 0xf6, 0x56, 0xc5, 0x9f, 0x40,
- 0x18, 0xfe, 0x77, 0x60, 0xa0, 0x23, 0xe8, 0x66, 0xaf, 0x07, 0xda, 0x7a, 0xe2, 0x75, 0xb3, 0xad,
- 0xea, 0x45, 0xa9, 0xc4, 0x44, 0xff, 0x37, 0x4a, 0x1c, 0xd1, 0xab, 0x52, 0x7c, 0x75, 0xde, 0xf6,
- 0xce, 0x53, 0xd7, 0xa5, 0xa2, 0x1f, 0xe1, 0x59, 0x45, 0x03, 0xc8, 0x29, 0x25, 0xd6, 0xca, 0xdc,
- 0xde, 0xfd, 0x43, 0x44, 0xa5, 0xfa, 0xe2, 0x66, 0x16, 0xaa, 0xd7, 0x0a, 0x65, 0xa1, 0x7a, 0xfd,
- 0x5a, 0x55, 0xf5, 0xe3, 0x83, 0x0f, 0x2a, 0x8e, 0x79, 0xfe, 0xe8, 0x9a, 0xcf, 0xf7, 0x13, 0x73,
- 0x8f, 0xc7, 0x37, 0xfb, 0x49, 0xf6, 0x9e, 0xfe, 0xdd, 0xee, 0xdf, 0xf0, 0xf4, 0x1c, 0xf9, 0x7e,
- 0x47, 0xbb, 0xde, 0xfc, 0x0e, 0x00, 0x00, 0xff, 0xff, 0x20, 0xce, 0xf0, 0xda, 0xa5, 0x07, 0x00,
- 0x00,
+func init() { proto.RegisterFile("blob.proto", fileDescriptor_blob_b206716c944087ca) }
+
+var fileDescriptor_blob_b206716c944087ca = []byte{
+ // 632 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x55, 0xcd, 0x4e, 0xdb, 0x40,
+ 0x10, 0x96, 0x63, 0x12, 0x92, 0x49, 0xa0, 0x74, 0xd5, 0x82, 0xb1, 0x5a, 0x64, 0xac, 0x1e, 0x7c,
+ 0x21, 0xa0, 0x54, 0xbd, 0x56, 0x02, 0x55, 0x44, 0x88, 0x0a, 0xd0, 0x72, 0x6a, 0x2f, 0x96, 0x8d,
+ 0x37, 0xb0, 0x68, 0xe3, 0x75, 0xbd, 0x1b, 0x10, 0x7d, 0x91, 0x3e, 0x48, 0xef, 0xed, 0xeb, 0xf4,
+ 0x19, 0x7a, 0xaa, 0xbc, 0xfe, 0x89, 0x13, 0x3b, 0xbd, 0xb8, 0xbd, 0xcd, 0xce, 0xec, 0xcc, 0xf7,
+ 0xcd, 0xcc, 0xe7, 0x35, 0x80, 0xcf, 0xb8, 0x3f, 0x8c, 0x62, 0x2e, 0x39, 0xea, 0xdc, 0x52, 0xe9,
+ 0xb1, 0x27, 0x73, 0x20, 0xee, 0xbc, 0x98, 0x04, 0xa9, 0xd7, 0x66, 0xb0, 0x39, 0x26, 0xf2, 0x84,
+ 0x71, 0x1f, 0x93, 0x2f, 0x33, 0x22, 0x24, 0x1a, 0x01, 0xc4, 0x24, 0xe2, 0x82, 0x4a, 0x1e, 0x3f,
+ 0x19, 0x9a, 0xa5, 0x39, 0xfd, 0x11, 0x1a, 0xa6, 0xc9, 0x43, 0x5c, 0x44, 0x70, 0xe9, 0x16, 0xda,
+ 0x02, 0x9d, 0xd3, 0xc0, 0x68, 0x59, 0x9a, 0xd3, 0xc3, 0x89, 0x89, 0x5e, 0x40, 0x9b, 0xd1, 0x29,
+ 0x95, 0x86, 0x6e, 0x69, 0x8e, 0x8e, 0xd3, 0x83, 0x7d, 0x0e, 0xcf, 0x0a, 0x34, 0x11, 0xf1, 0x50,
+ 0x10, 0x84, 0x60, 0x4d, 0xd0, 0xaf, 0x44, 0x01, 0xe9, 0x58, 0xd9, 0x89, 0x2f, 0xf0, 0xa4, 0xa7,
+ 0xea, 0x0d, 0xb0, 0xb2, 0x73, 0x08, 0xbd, 0x80, 0xb0, 0x7f, 0x69, 0x45, 0x35, 0xd1, 0x84, 0xfc,
+ 0x39, 0x6c, 0xc6, 0xe4, 0x81, 0x0a, 0xca, 0x43, 0x37, 0xf2, 0xe4, 0x9d, 0x30, 0x5a, 0x96, 0xee,
+ 0xf4, 0x47, 0x6f, 0xf2, 0xbc, 0x25, 0x90, 0x21, 0xce, 0x6e, 0x5f, 0x79, 0xf2, 0x0e, 0x6f, 0xc4,
+ 0xa5, 0x93, 0xa8, 0xef, 0xdb, 0x7c, 0x0f, 0x83, 0x72, 0x12, 0x32, 0xa1, 0x9b, 0xa7, 0x29, 0x92,
+ 0x3d, 0x5c, 0x9c, 0x93, 0xe6, 0x13, 0x16, 0x79, 0xf3, 0x89, 0x6d, 0x7f, 0xd7, 0x60, 0x6b, 0xce,
+ 0xa2, 0xe9, 0xe4, 0xd0, 0x3e, 0x0c, 0xa8, 0x70, 0xc5, 0xcc, 0x9f, 0xf2, 0x60, 0xc6, 0x88, 0xb1,
+ 0x66, 0x69, 0x4e, 0x17, 0xf7, 0xa9, 0xb8, 0xce, 0x5d, 0x49, 0xa1, 0x29, 0x0f, 0x88, 0xd1, 0xb6,
+ 0x34, 0xa7, 0x8d, 0x95, 0xbd, 0xc0, 0xba, 0xb3, 0x82, 0xf5, 0x7a, 0x89, 0xf5, 0x29, 0xc0, 0xc7,
+ 0xd3, 0xeb, 0x2b, 0x4e, 0x43, 0x49, 0xe2, 0x06, 0x8b, 0x3e, 0x83, 0x8d, 0x0b, 0xf2, 0x98, 0x34,
+ 0x7f, 0xe9, 0xdf, 0x93, 0x1b, 0x59, 0x5b, 0xaa, 0x2a, 0xc1, 0x9c, 0x92, 0x5e, 0xa2, 0x34, 0x81,
+ 0x97, 0x63, 0x22, 0xe7, 0xac, 0x1a, 0x09, 0x67, 0x17, 0xba, 0xc9, 0xf7, 0xe5, 0xd2, 0x20, 0x95,
+ 0x4c, 0x0f, 0xaf, 0x27, 0xe7, 0xb3, 0x40, 0xd8, 0x97, 0xb0, 0xbd, 0x8c, 0x93, 0x6d, 0xed, 0x1d,
+ 0x0c, 0xd8, 0x44, 0xb8, 0x51, 0xe6, 0x37, 0x34, 0xa5, 0xb5, 0x02, 0x6a, 0x9e, 0x82, 0xfb, 0x6c,
+ 0x22, 0xf2, 0x74, 0xfb, 0x87, 0x06, 0xc6, 0x98, 0xc8, 0x0b, 0xf2, 0xf8, 0x8f, 0xc8, 0x97, 0x97,
+ 0x99, 0x8e, 0x7f, 0xbe, 0xcc, 0x05, 0x11, 0xb7, 0x33, 0x11, 0xa3, 0x57, 0x00, 0x21, 0x97, 0x2e,
+ 0x0d, 0x5d, 0x8f, 0xb1, 0x4c, 0x33, 0xdd, 0x90, 0xcb, 0xb3, 0xf0, 0x98, 0x31, 0xb4, 0x07, 0xfd,
+ 0x2c, 0x1a, 0x93, 0x89, 0x30, 0xda, 0x96, 0xee, 0x0c, 0x70, 0x4f, 0x85, 0x31, 0x99, 0x08, 0x1b,
+ 0xc3, 0x6e, 0x0d, 0xff, 0x66, 0x43, 0xb9, 0x57, 0x33, 0x39, 0x66, 0xec, 0xff, 0xcf, 0x24, 0xe3,
+ 0xbf, 0x8c, 0xd5, 0x88, 0xff, 0xe8, 0xa7, 0x0e, 0xfd, 0x44, 0xd6, 0xd7, 0x24, 0x7e, 0xa0, 0x37,
+ 0x04, 0x7d, 0x80, 0xf5, 0xec, 0x2b, 0x47, 0xdb, 0x4b, 0x8f, 0x4f, 0xd6, 0x96, 0xb9, 0x53, 0xf1,
+ 0xa7, 0x14, 0xec, 0xce, 0xef, 0x6f, 0x4e, 0xab, 0xdb, 0x3a, 0xd2, 0xd0, 0x18, 0xba, 0xf9, 0x5b,
+ 0x81, 0x76, 0x56, 0xbc, 0x61, 0xa6, 0x51, 0x0d, 0x54, 0x0a, 0x7d, 0x52, 0xff, 0x86, 0x52, 0xbf,
+ 0xe8, 0x75, 0x29, 0xab, 0x3a, 0x73, 0x73, 0x6f, 0x55, 0xb8, 0x52, 0xda, 0x87, 0xe7, 0x15, 0x35,
+ 0x20, 0xab, 0x94, 0x5e, 0x2b, 0x74, 0x73, 0xff, 0x2f, 0x37, 0x56, 0x60, 0x2c, 0x6e, 0x6c, 0x01,
+ 0xa3, 0x56, 0x38, 0x0b, 0x18, 0xf5, 0xeb, 0x9e, 0x63, 0x9c, 0x1c, 0x7d, 0x4e, 0x6e, 0x33, 0xcf,
+ 0x1f, 0xde, 0xf0, 0xe9, 0x61, 0x6a, 0x1e, 0xf0, 0xf8, 0xf6, 0x30, 0xad, 0x71, 0xa0, 0x7e, 0xb2,
+ 0x87, 0xb7, 0x3c, 0x3b, 0x47, 0xbe, 0xdf, 0x51, 0xae, 0xb7, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff,
+ 0xcc, 0xf2, 0xfb, 0xec, 0x9b, 0x07, 0x00, 0x00,
}
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/cleanup.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/cleanup.pb.go
index ae513b80e..fd60ab3bf 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/cleanup.pb.go
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/cleanup.pb.go
@@ -38,7 +38,7 @@ func (m *ApplyBfgObjectMapRequest) Reset() { *m = ApplyBfgObjectMapReque
func (m *ApplyBfgObjectMapRequest) String() string { return proto.CompactTextString(m) }
func (*ApplyBfgObjectMapRequest) ProtoMessage() {}
func (*ApplyBfgObjectMapRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_cleanup_048c113e3f69de1a, []int{0}
+ return fileDescriptor_cleanup_8db38bed7bd810df, []int{0}
}
func (m *ApplyBfgObjectMapRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ApplyBfgObjectMapRequest.Unmarshal(m, b)
@@ -82,7 +82,7 @@ func (m *ApplyBfgObjectMapResponse) Reset() { *m = ApplyBfgObjectMapResp
func (m *ApplyBfgObjectMapResponse) String() string { return proto.CompactTextString(m) }
func (*ApplyBfgObjectMapResponse) ProtoMessage() {}
func (*ApplyBfgObjectMapResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_cleanup_048c113e3f69de1a, []int{1}
+ return fileDescriptor_cleanup_8db38bed7bd810df, []int{1}
}
func (m *ApplyBfgObjectMapResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ApplyBfgObjectMapResponse.Unmarshal(m, b)
@@ -102,9 +102,226 @@ func (m *ApplyBfgObjectMapResponse) XXX_DiscardUnknown() {
var xxx_messageInfo_ApplyBfgObjectMapResponse proto.InternalMessageInfo
+type ApplyBfgObjectMapStreamRequest struct {
+ // Only available on the first message
+ Repository *Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"`
+ // A raw object-map file as generated by BFG: https://rtyley.github.io/bfg-repo-cleaner
+ // Each line in the file has two object SHAs, space-separated - the original
+ // SHA of the object, and the SHA after BFG has rewritten the object.
+ ObjectMap []byte `protobuf:"bytes,2,opt,name=object_map,json=objectMap,proto3" json:"object_map,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *ApplyBfgObjectMapStreamRequest) Reset() { *m = ApplyBfgObjectMapStreamRequest{} }
+func (m *ApplyBfgObjectMapStreamRequest) String() string { return proto.CompactTextString(m) }
+func (*ApplyBfgObjectMapStreamRequest) ProtoMessage() {}
+func (*ApplyBfgObjectMapStreamRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_cleanup_8db38bed7bd810df, []int{2}
+}
+func (m *ApplyBfgObjectMapStreamRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_ApplyBfgObjectMapStreamRequest.Unmarshal(m, b)
+}
+func (m *ApplyBfgObjectMapStreamRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_ApplyBfgObjectMapStreamRequest.Marshal(b, m, deterministic)
+}
+func (dst *ApplyBfgObjectMapStreamRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_ApplyBfgObjectMapStreamRequest.Merge(dst, src)
+}
+func (m *ApplyBfgObjectMapStreamRequest) XXX_Size() int {
+ return xxx_messageInfo_ApplyBfgObjectMapStreamRequest.Size(m)
+}
+func (m *ApplyBfgObjectMapStreamRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_ApplyBfgObjectMapStreamRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_ApplyBfgObjectMapStreamRequest proto.InternalMessageInfo
+
+func (m *ApplyBfgObjectMapStreamRequest) GetRepository() *Repository {
+ if m != nil {
+ return m.Repository
+ }
+ return nil
+}
+
+func (m *ApplyBfgObjectMapStreamRequest) GetObjectMap() []byte {
+ if m != nil {
+ return m.ObjectMap
+ }
+ return nil
+}
+
+type ApplyBfgObjectMapStreamResponse struct {
+ Entries []*ApplyBfgObjectMapStreamResponse_Entry `protobuf:"bytes,1,rep,name=entries,proto3" json:"entries,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *ApplyBfgObjectMapStreamResponse) Reset() { *m = ApplyBfgObjectMapStreamResponse{} }
+func (m *ApplyBfgObjectMapStreamResponse) String() string { return proto.CompactTextString(m) }
+func (*ApplyBfgObjectMapStreamResponse) ProtoMessage() {}
+func (*ApplyBfgObjectMapStreamResponse) Descriptor() ([]byte, []int) {
+ return fileDescriptor_cleanup_8db38bed7bd810df, []int{3}
+}
+func (m *ApplyBfgObjectMapStreamResponse) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_ApplyBfgObjectMapStreamResponse.Unmarshal(m, b)
+}
+func (m *ApplyBfgObjectMapStreamResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_ApplyBfgObjectMapStreamResponse.Marshal(b, m, deterministic)
+}
+func (dst *ApplyBfgObjectMapStreamResponse) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_ApplyBfgObjectMapStreamResponse.Merge(dst, src)
+}
+func (m *ApplyBfgObjectMapStreamResponse) XXX_Size() int {
+ return xxx_messageInfo_ApplyBfgObjectMapStreamResponse.Size(m)
+}
+func (m *ApplyBfgObjectMapStreamResponse) XXX_DiscardUnknown() {
+ xxx_messageInfo_ApplyBfgObjectMapStreamResponse.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_ApplyBfgObjectMapStreamResponse proto.InternalMessageInfo
+
+func (m *ApplyBfgObjectMapStreamResponse) GetEntries() []*ApplyBfgObjectMapStreamResponse_Entry {
+ if m != nil {
+ return m.Entries
+ }
+ return nil
+}
+
+// We send back each parsed entry in the request's object map so the client
+// can take action
+type ApplyBfgObjectMapStreamResponse_Entry struct {
+ Type ObjectType `protobuf:"varint,1,opt,name=type,proto3,enum=gitaly.ObjectType" json:"type,omitempty"`
+ OldOid string `protobuf:"bytes,2,opt,name=old_oid,json=oldOid,proto3" json:"old_oid,omitempty"`
+ NewOid string `protobuf:"bytes,3,opt,name=new_oid,json=newOid,proto3" json:"new_oid,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *ApplyBfgObjectMapStreamResponse_Entry) Reset() { *m = ApplyBfgObjectMapStreamResponse_Entry{} }
+func (m *ApplyBfgObjectMapStreamResponse_Entry) String() string { return proto.CompactTextString(m) }
+func (*ApplyBfgObjectMapStreamResponse_Entry) ProtoMessage() {}
+func (*ApplyBfgObjectMapStreamResponse_Entry) Descriptor() ([]byte, []int) {
+ return fileDescriptor_cleanup_8db38bed7bd810df, []int{3, 0}
+}
+func (m *ApplyBfgObjectMapStreamResponse_Entry) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_ApplyBfgObjectMapStreamResponse_Entry.Unmarshal(m, b)
+}
+func (m *ApplyBfgObjectMapStreamResponse_Entry) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_ApplyBfgObjectMapStreamResponse_Entry.Marshal(b, m, deterministic)
+}
+func (dst *ApplyBfgObjectMapStreamResponse_Entry) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_ApplyBfgObjectMapStreamResponse_Entry.Merge(dst, src)
+}
+func (m *ApplyBfgObjectMapStreamResponse_Entry) XXX_Size() int {
+ return xxx_messageInfo_ApplyBfgObjectMapStreamResponse_Entry.Size(m)
+}
+func (m *ApplyBfgObjectMapStreamResponse_Entry) XXX_DiscardUnknown() {
+ xxx_messageInfo_ApplyBfgObjectMapStreamResponse_Entry.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_ApplyBfgObjectMapStreamResponse_Entry proto.InternalMessageInfo
+
+func (m *ApplyBfgObjectMapStreamResponse_Entry) GetType() ObjectType {
+ if m != nil {
+ return m.Type
+ }
+ return ObjectType_UNKNOWN
+}
+
+func (m *ApplyBfgObjectMapStreamResponse_Entry) GetOldOid() string {
+ if m != nil {
+ return m.OldOid
+ }
+ return ""
+}
+
+func (m *ApplyBfgObjectMapStreamResponse_Entry) GetNewOid() string {
+ if m != nil {
+ return m.NewOid
+ }
+ return ""
+}
+
+type CloseSessionRequest struct {
+ SessionId string `protobuf:"bytes,1,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *CloseSessionRequest) Reset() { *m = CloseSessionRequest{} }
+func (m *CloseSessionRequest) String() string { return proto.CompactTextString(m) }
+func (*CloseSessionRequest) ProtoMessage() {}
+func (*CloseSessionRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_cleanup_8db38bed7bd810df, []int{4}
+}
+func (m *CloseSessionRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_CloseSessionRequest.Unmarshal(m, b)
+}
+func (m *CloseSessionRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_CloseSessionRequest.Marshal(b, m, deterministic)
+}
+func (dst *CloseSessionRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_CloseSessionRequest.Merge(dst, src)
+}
+func (m *CloseSessionRequest) XXX_Size() int {
+ return xxx_messageInfo_CloseSessionRequest.Size(m)
+}
+func (m *CloseSessionRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_CloseSessionRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_CloseSessionRequest proto.InternalMessageInfo
+
+func (m *CloseSessionRequest) GetSessionId() string {
+ if m != nil {
+ return m.SessionId
+ }
+ return ""
+}
+
+type CloseSessionResponse struct {
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *CloseSessionResponse) Reset() { *m = CloseSessionResponse{} }
+func (m *CloseSessionResponse) String() string { return proto.CompactTextString(m) }
+func (*CloseSessionResponse) ProtoMessage() {}
+func (*CloseSessionResponse) Descriptor() ([]byte, []int) {
+ return fileDescriptor_cleanup_8db38bed7bd810df, []int{5}
+}
+func (m *CloseSessionResponse) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_CloseSessionResponse.Unmarshal(m, b)
+}
+func (m *CloseSessionResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_CloseSessionResponse.Marshal(b, m, deterministic)
+}
+func (dst *CloseSessionResponse) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_CloseSessionResponse.Merge(dst, src)
+}
+func (m *CloseSessionResponse) XXX_Size() int {
+ return xxx_messageInfo_CloseSessionResponse.Size(m)
+}
+func (m *CloseSessionResponse) XXX_DiscardUnknown() {
+ xxx_messageInfo_CloseSessionResponse.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_CloseSessionResponse proto.InternalMessageInfo
+
func init() {
proto.RegisterType((*ApplyBfgObjectMapRequest)(nil), "gitaly.ApplyBfgObjectMapRequest")
proto.RegisterType((*ApplyBfgObjectMapResponse)(nil), "gitaly.ApplyBfgObjectMapResponse")
+ proto.RegisterType((*ApplyBfgObjectMapStreamRequest)(nil), "gitaly.ApplyBfgObjectMapStreamRequest")
+ proto.RegisterType((*ApplyBfgObjectMapStreamResponse)(nil), "gitaly.ApplyBfgObjectMapStreamResponse")
+ proto.RegisterType((*ApplyBfgObjectMapStreamResponse_Entry)(nil), "gitaly.ApplyBfgObjectMapStreamResponse.Entry")
+ proto.RegisterType((*CloseSessionRequest)(nil), "gitaly.CloseSessionRequest")
+ proto.RegisterType((*CloseSessionResponse)(nil), "gitaly.CloseSessionResponse")
}
// Reference imports to suppress errors if they are not otherwise used.
@@ -119,7 +336,10 @@ const _ = grpc.SupportPackageIsVersion4
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type CleanupServiceClient interface {
+ // Deprecated in favour of ApplyBfgObjectMapStream
ApplyBfgObjectMap(ctx context.Context, opts ...grpc.CallOption) (CleanupService_ApplyBfgObjectMapClient, error)
+ ApplyBfgObjectMapStream(ctx context.Context, opts ...grpc.CallOption) (CleanupService_ApplyBfgObjectMapStreamClient, error)
+ CloseSession(ctx context.Context, in *CloseSessionRequest, opts ...grpc.CallOption) (*CloseSessionResponse, error)
}
type cleanupServiceClient struct {
@@ -164,9 +384,52 @@ func (x *cleanupServiceApplyBfgObjectMapClient) CloseAndRecv() (*ApplyBfgObjectM
return m, nil
}
+func (c *cleanupServiceClient) ApplyBfgObjectMapStream(ctx context.Context, opts ...grpc.CallOption) (CleanupService_ApplyBfgObjectMapStreamClient, error) {
+ stream, err := c.cc.NewStream(ctx, &_CleanupService_serviceDesc.Streams[1], "/gitaly.CleanupService/ApplyBfgObjectMapStream", opts...)
+ if err != nil {
+ return nil, err
+ }
+ x := &cleanupServiceApplyBfgObjectMapStreamClient{stream}
+ return x, nil
+}
+
+type CleanupService_ApplyBfgObjectMapStreamClient interface {
+ Send(*ApplyBfgObjectMapStreamRequest) error
+ Recv() (*ApplyBfgObjectMapStreamResponse, error)
+ grpc.ClientStream
+}
+
+type cleanupServiceApplyBfgObjectMapStreamClient struct {
+ grpc.ClientStream
+}
+
+func (x *cleanupServiceApplyBfgObjectMapStreamClient) Send(m *ApplyBfgObjectMapStreamRequest) error {
+ return x.ClientStream.SendMsg(m)
+}
+
+func (x *cleanupServiceApplyBfgObjectMapStreamClient) Recv() (*ApplyBfgObjectMapStreamResponse, error) {
+ m := new(ApplyBfgObjectMapStreamResponse)
+ if err := x.ClientStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
+func (c *cleanupServiceClient) CloseSession(ctx context.Context, in *CloseSessionRequest, opts ...grpc.CallOption) (*CloseSessionResponse, error) {
+ out := new(CloseSessionResponse)
+ err := c.cc.Invoke(ctx, "/gitaly.CleanupService/CloseSession", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
// CleanupServiceServer is the server API for CleanupService service.
type CleanupServiceServer interface {
+ // Deprecated in favour of ApplyBfgObjectMapStream
ApplyBfgObjectMap(CleanupService_ApplyBfgObjectMapServer) error
+ ApplyBfgObjectMapStream(CleanupService_ApplyBfgObjectMapStreamServer) error
+ CloseSession(context.Context, *CloseSessionRequest) (*CloseSessionResponse, error)
}
func RegisterCleanupServiceServer(s *grpc.Server, srv CleanupServiceServer) {
@@ -199,37 +462,104 @@ func (x *cleanupServiceApplyBfgObjectMapServer) Recv() (*ApplyBfgObjectMapReques
return m, nil
}
+func _CleanupService_ApplyBfgObjectMapStream_Handler(srv interface{}, stream grpc.ServerStream) error {
+ return srv.(CleanupServiceServer).ApplyBfgObjectMapStream(&cleanupServiceApplyBfgObjectMapStreamServer{stream})
+}
+
+type CleanupService_ApplyBfgObjectMapStreamServer interface {
+ Send(*ApplyBfgObjectMapStreamResponse) error
+ Recv() (*ApplyBfgObjectMapStreamRequest, error)
+ grpc.ServerStream
+}
+
+type cleanupServiceApplyBfgObjectMapStreamServer struct {
+ grpc.ServerStream
+}
+
+func (x *cleanupServiceApplyBfgObjectMapStreamServer) Send(m *ApplyBfgObjectMapStreamResponse) error {
+ return x.ServerStream.SendMsg(m)
+}
+
+func (x *cleanupServiceApplyBfgObjectMapStreamServer) Recv() (*ApplyBfgObjectMapStreamRequest, error) {
+ m := new(ApplyBfgObjectMapStreamRequest)
+ if err := x.ServerStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
+func _CleanupService_CloseSession_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CloseSessionRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(CleanupServiceServer).CloseSession(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/gitaly.CleanupService/CloseSession",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(CleanupServiceServer).CloseSession(ctx, req.(*CloseSessionRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
var _CleanupService_serviceDesc = grpc.ServiceDesc{
ServiceName: "gitaly.CleanupService",
HandlerType: (*CleanupServiceServer)(nil),
- Methods: []grpc.MethodDesc{},
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "CloseSession",
+ Handler: _CleanupService_CloseSession_Handler,
+ },
+ },
Streams: []grpc.StreamDesc{
{
StreamName: "ApplyBfgObjectMap",
Handler: _CleanupService_ApplyBfgObjectMap_Handler,
ClientStreams: true,
},
+ {
+ StreamName: "ApplyBfgObjectMapStream",
+ Handler: _CleanupService_ApplyBfgObjectMapStream_Handler,
+ ServerStreams: true,
+ ClientStreams: true,
+ },
},
Metadata: "cleanup.proto",
}
-func init() { proto.RegisterFile("cleanup.proto", fileDescriptor_cleanup_048c113e3f69de1a) }
-
-var fileDescriptor_cleanup_048c113e3f69de1a = []byte{
- // 234 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0xe2, 0x4d, 0xce, 0x49, 0x4d,
- 0xcc, 0x2b, 0x2d, 0xd0, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0x62, 0x4b, 0xcf, 0x2c, 0x49, 0xcc,
- 0xa9, 0x94, 0xe2, 0x29, 0xce, 0x48, 0x2c, 0x4a, 0x4d, 0x81, 0x88, 0x2a, 0x95, 0x72, 0x49, 0x38,
- 0x16, 0x14, 0xe4, 0x54, 0x3a, 0xa5, 0xa5, 0xfb, 0x27, 0x65, 0xa5, 0x26, 0x97, 0xf8, 0x26, 0x16,
- 0x04, 0xa5, 0x16, 0x96, 0xa6, 0x16, 0x97, 0x08, 0x19, 0x71, 0x71, 0x15, 0xa5, 0x16, 0xe4, 0x17,
- 0x67, 0x96, 0xe4, 0x17, 0x55, 0x4a, 0x30, 0x2a, 0x30, 0x6a, 0x70, 0x1b, 0x09, 0xe9, 0x41, 0x8c,
- 0xd1, 0x0b, 0x82, 0xcb, 0x04, 0x21, 0xa9, 0x12, 0x92, 0xe5, 0xe2, 0xca, 0x07, 0x9b, 0x13, 0x9f,
- 0x9b, 0x58, 0x20, 0xc1, 0xa4, 0xc0, 0xa8, 0xc1, 0x13, 0xc4, 0x99, 0x0f, 0x33, 0xd9, 0x8a, 0xed,
- 0xd3, 0x74, 0x0d, 0x26, 0x0e, 0x46, 0x25, 0x69, 0x2e, 0x49, 0x2c, 0xd6, 0x16, 0x17, 0xe4, 0xe7,
- 0x15, 0xa7, 0x1a, 0xe5, 0x71, 0xf1, 0x39, 0x43, 0x9c, 0x1e, 0x9c, 0x5a, 0x54, 0x96, 0x99, 0x9c,
- 0x2a, 0x14, 0xc3, 0x25, 0x88, 0xa1, 0x5c, 0x48, 0x01, 0xe6, 0x14, 0x5c, 0x1e, 0x90, 0x52, 0xc4,
- 0xa3, 0x02, 0x62, 0x97, 0x12, 0x83, 0x06, 0xa3, 0x93, 0x41, 0x14, 0x48, 0x5d, 0x4e, 0x62, 0x92,
- 0x5e, 0x72, 0x7e, 0xae, 0x3e, 0x84, 0xa9, 0x9b, 0x5f, 0x94, 0xae, 0x0f, 0xd1, 0xad, 0x0b, 0x0e,
- 0x29, 0xfd, 0xf4, 0x7c, 0x28, 0xbf, 0x20, 0x29, 0x89, 0x0d, 0x2c, 0x64, 0x0c, 0x08, 0x00, 0x00,
- 0xff, 0xff, 0x10, 0x0a, 0xea, 0x78, 0x63, 0x01, 0x00, 0x00,
+func init() { proto.RegisterFile("cleanup.proto", fileDescriptor_cleanup_8db38bed7bd810df) }
+
+var fileDescriptor_cleanup_8db38bed7bd810df = []byte{
+ // 421 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x53, 0xd1, 0x6e, 0xd3, 0x30,
+ 0x14, 0x95, 0x3b, 0xe8, 0xe8, 0x5d, 0x99, 0x84, 0x41, 0xac, 0x74, 0x0c, 0x4a, 0x1e, 0x46, 0x5e,
+ 0x9a, 0x4e, 0x81, 0x1f, 0x60, 0x13, 0x42, 0x3c, 0xa0, 0x0a, 0x97, 0x27, 0x5e, 0x2a, 0x27, 0xbe,
+ 0x04, 0xa3, 0x24, 0x36, 0xb6, 0xb7, 0x29, 0x5f, 0xc2, 0xe7, 0xf0, 0x05, 0xfc, 0x10, 0x4f, 0x68,
+ 0x76, 0xc2, 0x36, 0xad, 0xa5, 0xbc, 0xec, 0x2d, 0x39, 0xc7, 0xf7, 0x9c, 0x73, 0x8f, 0x13, 0xb8,
+ 0x9f, 0x97, 0xc8, 0xeb, 0x53, 0x9d, 0x68, 0xa3, 0x9c, 0xa2, 0xfd, 0x42, 0x3a, 0x5e, 0x36, 0xe3,
+ 0xa1, 0xfd, 0xca, 0x0d, 0x8a, 0x80, 0x46, 0x15, 0x8c, 0xde, 0x68, 0x5d, 0x36, 0xc7, 0x5f, 0x8a,
+ 0x79, 0xf6, 0x0d, 0x73, 0xf7, 0x81, 0x6b, 0x86, 0xdf, 0x4f, 0xd1, 0x3a, 0x9a, 0x02, 0x18, 0xd4,
+ 0xca, 0x4a, 0xa7, 0x4c, 0x33, 0x22, 0x13, 0x12, 0xef, 0xa4, 0x34, 0x09, 0x32, 0x09, 0xfb, 0xcb,
+ 0xb0, 0x2b, 0xa7, 0xe8, 0x01, 0x80, 0xf2, 0x3a, 0xcb, 0x8a, 0xeb, 0x51, 0x6f, 0x42, 0xe2, 0x21,
+ 0x1b, 0xa8, 0x4e, 0x39, 0xda, 0x87, 0x27, 0x2b, 0xec, 0xac, 0x56, 0xb5, 0xc5, 0xc8, 0xc2, 0xb3,
+ 0x1b, 0xe4, 0xc2, 0x19, 0xe4, 0xd5, 0x2d, 0x26, 0xfa, 0x45, 0xe0, 0xf9, 0x5a, 0xd7, 0x10, 0x8c,
+ 0xbe, 0x83, 0x6d, 0xac, 0x9d, 0x91, 0x68, 0x47, 0x64, 0xb2, 0x15, 0xef, 0xa4, 0xd3, 0xce, 0x73,
+ 0xc3, 0x64, 0xf2, 0xb6, 0x76, 0xa6, 0x61, 0xdd, 0xf4, 0x98, 0xc3, 0x5d, 0x8f, 0xd0, 0x43, 0xb8,
+ 0xe3, 0x1a, 0x8d, 0x7e, 0x85, 0xdd, 0xcb, 0x15, 0x82, 0xcc, 0xa7, 0x46, 0x23, 0xf3, 0x3c, 0xdd,
+ 0x83, 0x6d, 0x55, 0x8a, 0xa5, 0x92, 0xc2, 0x27, 0x1f, 0xb0, 0xbe, 0x2a, 0xc5, 0x5c, 0x8a, 0x0b,
+ 0xa2, 0xc6, 0x73, 0x4f, 0x6c, 0x05, 0xa2, 0xc6, 0xf3, 0xb9, 0x14, 0xd1, 0x6b, 0x78, 0x78, 0x52,
+ 0x2a, 0x8b, 0x0b, 0xb4, 0x56, 0xaa, 0xba, 0x6b, 0xee, 0x00, 0xc0, 0x06, 0x64, 0x29, 0x85, 0xb7,
+ 0x1d, 0xb0, 0x41, 0x8b, 0xbc, 0x17, 0xd1, 0x63, 0x78, 0x74, 0x7d, 0x2a, 0xe4, 0x4f, 0x7f, 0xf6,
+ 0x60, 0xf7, 0x24, 0x7c, 0x46, 0x0b, 0x34, 0x67, 0x32, 0x47, 0x9a, 0xc1, 0x83, 0x1b, 0x5b, 0xd3,
+ 0xc9, 0xda, 0x42, 0xda, 0x00, 0xe3, 0x17, 0xff, 0x38, 0xd1, 0xde, 0x7f, 0xff, 0xf7, 0x8f, 0xb8,
+ 0x77, 0x8f, 0xc4, 0x84, 0x9e, 0xc1, 0xde, 0x9a, 0x66, 0xe9, 0xe1, 0xc6, 0xea, 0x83, 0xdf, 0xcb,
+ 0xff, 0xbc, 0xa2, 0x4b, 0xd7, 0x23, 0x42, 0x3f, 0xc2, 0xf0, 0x6a, 0x0d, 0x74, 0xbf, 0x13, 0x59,
+ 0x51, 0xe9, 0xf8, 0xe9, 0x6a, 0xf2, 0xba, 0xec, 0xf1, 0xd1, 0xe7, 0x8b, 0x63, 0x25, 0xcf, 0x92,
+ 0x5c, 0x55, 0xb3, 0xf0, 0x38, 0x55, 0xa6, 0x98, 0x85, 0xe1, 0xa9, 0xff, 0x0d, 0x67, 0x85, 0x6a,
+ 0xdf, 0x75, 0x96, 0xf5, 0x3d, 0xf4, 0xea, 0x4f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x9e, 0xad, 0x67,
+ 0x57, 0xc0, 0x03, 0x00, 0x00,
}
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/commit.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/commit.pb.go
index 35384d9ae..d4ba71af6 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/commit.pb.go
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/commit.pb.go
@@ -24,6 +24,7 @@ var _ = math.Inf
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
+// TODO: Replace this enum with ObjectType in shared.proto
type TreeEntryResponse_ObjectType int32
const (
@@ -50,9 +51,10 @@ func (x TreeEntryResponse_ObjectType) String() string {
return proto.EnumName(TreeEntryResponse_ObjectType_name, int32(x))
}
func (TreeEntryResponse_ObjectType) EnumDescriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{5, 0}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{5, 0}
}
+// TODO: Replace this enum with ObjectType in shared.proto
type TreeEntry_EntryType int32
const (
@@ -76,7 +78,7 @@ func (x TreeEntry_EntryType) String() string {
return proto.EnumName(TreeEntry_EntryType_name, int32(x))
}
func (TreeEntry_EntryType) EnumDescriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{12, 0}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{12, 0}
}
type FindAllCommitsRequest_Order int32
@@ -102,7 +104,7 @@ func (x FindAllCommitsRequest_Order) String() string {
return proto.EnumName(FindAllCommitsRequest_Order_name, int32(x))
}
func (FindAllCommitsRequest_Order) EnumDescriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{21, 0}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{21, 0}
}
type CommitStatsRequest struct {
@@ -117,7 +119,7 @@ func (m *CommitStatsRequest) Reset() { *m = CommitStatsRequest{} }
func (m *CommitStatsRequest) String() string { return proto.CompactTextString(m) }
func (*CommitStatsRequest) ProtoMessage() {}
func (*CommitStatsRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{0}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{0}
}
func (m *CommitStatsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommitStatsRequest.Unmarshal(m, b)
@@ -165,7 +167,7 @@ func (m *CommitStatsResponse) Reset() { *m = CommitStatsResponse{} }
func (m *CommitStatsResponse) String() string { return proto.CompactTextString(m) }
func (*CommitStatsResponse) ProtoMessage() {}
func (*CommitStatsResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{1}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{1}
}
func (m *CommitStatsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommitStatsResponse.Unmarshal(m, b)
@@ -219,7 +221,7 @@ func (m *CommitIsAncestorRequest) Reset() { *m = CommitIsAncestorRequest
func (m *CommitIsAncestorRequest) String() string { return proto.CompactTextString(m) }
func (*CommitIsAncestorRequest) ProtoMessage() {}
func (*CommitIsAncestorRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{2}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{2}
}
func (m *CommitIsAncestorRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommitIsAncestorRequest.Unmarshal(m, b)
@@ -271,7 +273,7 @@ func (m *CommitIsAncestorResponse) Reset() { *m = CommitIsAncestorRespon
func (m *CommitIsAncestorResponse) String() string { return proto.CompactTextString(m) }
func (*CommitIsAncestorResponse) ProtoMessage() {}
func (*CommitIsAncestorResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{3}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{3}
}
func (m *CommitIsAncestorResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommitIsAncestorResponse.Unmarshal(m, b)
@@ -314,7 +316,7 @@ func (m *TreeEntryRequest) Reset() { *m = TreeEntryRequest{} }
func (m *TreeEntryRequest) String() string { return proto.CompactTextString(m) }
func (*TreeEntryRequest) ProtoMessage() {}
func (*TreeEntryRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{4}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{4}
}
func (m *TreeEntryRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_TreeEntryRequest.Unmarshal(m, b)
@@ -380,7 +382,7 @@ func (m *TreeEntryResponse) Reset() { *m = TreeEntryResponse{} }
func (m *TreeEntryResponse) String() string { return proto.CompactTextString(m) }
func (*TreeEntryResponse) ProtoMessage() {}
func (*TreeEntryResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{5}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{5}
}
func (m *TreeEntryResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_TreeEntryResponse.Unmarshal(m, b)
@@ -448,7 +450,7 @@ func (m *CommitsBetweenRequest) Reset() { *m = CommitsBetweenRequest{} }
func (m *CommitsBetweenRequest) String() string { return proto.CompactTextString(m) }
func (*CommitsBetweenRequest) ProtoMessage() {}
func (*CommitsBetweenRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{6}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{6}
}
func (m *CommitsBetweenRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommitsBetweenRequest.Unmarshal(m, b)
@@ -500,7 +502,7 @@ func (m *CommitsBetweenResponse) Reset() { *m = CommitsBetweenResponse{}
func (m *CommitsBetweenResponse) String() string { return proto.CompactTextString(m) }
func (*CommitsBetweenResponse) ProtoMessage() {}
func (*CommitsBetweenResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{7}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{7}
}
func (m *CommitsBetweenResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommitsBetweenResponse.Unmarshal(m, b)
@@ -545,7 +547,7 @@ func (m *CountCommitsRequest) Reset() { *m = CountCommitsRequest{} }
func (m *CountCommitsRequest) String() string { return proto.CompactTextString(m) }
func (*CountCommitsRequest) ProtoMessage() {}
func (*CountCommitsRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{8}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{8}
}
func (m *CountCommitsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CountCommitsRequest.Unmarshal(m, b)
@@ -625,7 +627,7 @@ func (m *CountCommitsResponse) Reset() { *m = CountCommitsResponse{} }
func (m *CountCommitsResponse) String() string { return proto.CompactTextString(m) }
func (*CountCommitsResponse) ProtoMessage() {}
func (*CountCommitsResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{9}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{9}
}
func (m *CountCommitsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CountCommitsResponse.Unmarshal(m, b)
@@ -666,7 +668,7 @@ func (m *CountDivergingCommitsRequest) Reset() { *m = CountDivergingComm
func (m *CountDivergingCommitsRequest) String() string { return proto.CompactTextString(m) }
func (*CountDivergingCommitsRequest) ProtoMessage() {}
func (*CountDivergingCommitsRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{10}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{10}
}
func (m *CountDivergingCommitsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CountDivergingCommitsRequest.Unmarshal(m, b)
@@ -726,7 +728,7 @@ func (m *CountDivergingCommitsResponse) Reset() { *m = CountDivergingCom
func (m *CountDivergingCommitsResponse) String() string { return proto.CompactTextString(m) }
func (*CountDivergingCommitsResponse) ProtoMessage() {}
func (*CountDivergingCommitsResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{11}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{11}
}
func (m *CountDivergingCommitsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CountDivergingCommitsResponse.Unmarshal(m, b)
@@ -783,7 +785,7 @@ func (m *TreeEntry) Reset() { *m = TreeEntry{} }
func (m *TreeEntry) String() string { return proto.CompactTextString(m) }
func (*TreeEntry) ProtoMessage() {}
func (*TreeEntry) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{12}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{12}
}
func (m *TreeEntry) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_TreeEntry.Unmarshal(m, b)
@@ -866,7 +868,7 @@ func (m *GetTreeEntriesRequest) Reset() { *m = GetTreeEntriesRequest{} }
func (m *GetTreeEntriesRequest) String() string { return proto.CompactTextString(m) }
func (*GetTreeEntriesRequest) ProtoMessage() {}
func (*GetTreeEntriesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{13}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{13}
}
func (m *GetTreeEntriesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetTreeEntriesRequest.Unmarshal(m, b)
@@ -925,7 +927,7 @@ func (m *GetTreeEntriesResponse) Reset() { *m = GetTreeEntriesResponse{}
func (m *GetTreeEntriesResponse) String() string { return proto.CompactTextString(m) }
func (*GetTreeEntriesResponse) ProtoMessage() {}
func (*GetTreeEntriesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{14}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{14}
}
func (m *GetTreeEntriesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetTreeEntriesResponse.Unmarshal(m, b)
@@ -964,7 +966,7 @@ func (m *ListFilesRequest) Reset() { *m = ListFilesRequest{} }
func (m *ListFilesRequest) String() string { return proto.CompactTextString(m) }
func (*ListFilesRequest) ProtoMessage() {}
func (*ListFilesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{15}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{15}
}
func (m *ListFilesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListFilesRequest.Unmarshal(m, b)
@@ -1011,7 +1013,7 @@ func (m *ListFilesResponse) Reset() { *m = ListFilesResponse{} }
func (m *ListFilesResponse) String() string { return proto.CompactTextString(m) }
func (*ListFilesResponse) ProtoMessage() {}
func (*ListFilesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{16}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{16}
}
func (m *ListFilesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListFilesResponse.Unmarshal(m, b)
@@ -1050,7 +1052,7 @@ func (m *FindCommitRequest) Reset() { *m = FindCommitRequest{} }
func (m *FindCommitRequest) String() string { return proto.CompactTextString(m) }
func (*FindCommitRequest) ProtoMessage() {}
func (*FindCommitRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{17}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{17}
}
func (m *FindCommitRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindCommitRequest.Unmarshal(m, b)
@@ -1096,7 +1098,7 @@ func (m *FindCommitResponse) Reset() { *m = FindCommitResponse{} }
func (m *FindCommitResponse) String() string { return proto.CompactTextString(m) }
func (*FindCommitResponse) ProtoMessage() {}
func (*FindCommitResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{18}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{18}
}
func (m *FindCommitResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindCommitResponse.Unmarshal(m, b)
@@ -1135,7 +1137,7 @@ func (m *ListCommitsByOidRequest) Reset() { *m = ListCommitsByOidRequest
func (m *ListCommitsByOidRequest) String() string { return proto.CompactTextString(m) }
func (*ListCommitsByOidRequest) ProtoMessage() {}
func (*ListCommitsByOidRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{19}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{19}
}
func (m *ListCommitsByOidRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListCommitsByOidRequest.Unmarshal(m, b)
@@ -1180,7 +1182,7 @@ func (m *ListCommitsByOidResponse) Reset() { *m = ListCommitsByOidRespon
func (m *ListCommitsByOidResponse) String() string { return proto.CompactTextString(m) }
func (*ListCommitsByOidResponse) ProtoMessage() {}
func (*ListCommitsByOidResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{20}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{20}
}
func (m *ListCommitsByOidResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListCommitsByOidResponse.Unmarshal(m, b)
@@ -1223,7 +1225,7 @@ func (m *FindAllCommitsRequest) Reset() { *m = FindAllCommitsRequest{} }
func (m *FindAllCommitsRequest) String() string { return proto.CompactTextString(m) }
func (*FindAllCommitsRequest) ProtoMessage() {}
func (*FindAllCommitsRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{21}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{21}
}
func (m *FindAllCommitsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindAllCommitsRequest.Unmarshal(m, b)
@@ -1290,7 +1292,7 @@ func (m *FindAllCommitsResponse) Reset() { *m = FindAllCommitsResponse{}
func (m *FindAllCommitsResponse) String() string { return proto.CompactTextString(m) }
func (*FindAllCommitsResponse) ProtoMessage() {}
func (*FindAllCommitsResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{22}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{22}
}
func (m *FindAllCommitsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindAllCommitsResponse.Unmarshal(m, b)
@@ -1339,7 +1341,7 @@ func (m *FindCommitsRequest) Reset() { *m = FindCommitsRequest{} }
func (m *FindCommitsRequest) String() string { return proto.CompactTextString(m) }
func (*FindCommitsRequest) ProtoMessage() {}
func (*FindCommitsRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{23}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{23}
}
func (m *FindCommitsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindCommitsRequest.Unmarshal(m, b)
@@ -1448,7 +1450,7 @@ func (m *FindCommitsResponse) Reset() { *m = FindCommitsResponse{} }
func (m *FindCommitsResponse) String() string { return proto.CompactTextString(m) }
func (*FindCommitsResponse) ProtoMessage() {}
func (*FindCommitsResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{24}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{24}
}
func (m *FindCommitsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindCommitsResponse.Unmarshal(m, b)
@@ -1487,7 +1489,7 @@ func (m *CommitLanguagesRequest) Reset() { *m = CommitLanguagesRequest{}
func (m *CommitLanguagesRequest) String() string { return proto.CompactTextString(m) }
func (*CommitLanguagesRequest) ProtoMessage() {}
func (*CommitLanguagesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{25}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{25}
}
func (m *CommitLanguagesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommitLanguagesRequest.Unmarshal(m, b)
@@ -1532,7 +1534,7 @@ func (m *CommitLanguagesResponse) Reset() { *m = CommitLanguagesResponse
func (m *CommitLanguagesResponse) String() string { return proto.CompactTextString(m) }
func (*CommitLanguagesResponse) ProtoMessage() {}
func (*CommitLanguagesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{26}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{26}
}
func (m *CommitLanguagesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommitLanguagesResponse.Unmarshal(m, b)
@@ -1572,7 +1574,7 @@ func (m *CommitLanguagesResponse_Language) Reset() { *m = CommitLanguage
func (m *CommitLanguagesResponse_Language) String() string { return proto.CompactTextString(m) }
func (*CommitLanguagesResponse_Language) ProtoMessage() {}
func (*CommitLanguagesResponse_Language) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{26, 0}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{26, 0}
}
func (m *CommitLanguagesResponse_Language) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommitLanguagesResponse_Language.Unmarshal(m, b)
@@ -1626,7 +1628,7 @@ func (m *RawBlameRequest) Reset() { *m = RawBlameRequest{} }
func (m *RawBlameRequest) String() string { return proto.CompactTextString(m) }
func (*RawBlameRequest) ProtoMessage() {}
func (*RawBlameRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{27}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{27}
}
func (m *RawBlameRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RawBlameRequest.Unmarshal(m, b)
@@ -1678,7 +1680,7 @@ func (m *RawBlameResponse) Reset() { *m = RawBlameResponse{} }
func (m *RawBlameResponse) String() string { return proto.CompactTextString(m) }
func (*RawBlameResponse) ProtoMessage() {}
func (*RawBlameResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{28}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{28}
}
func (m *RawBlameResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RawBlameResponse.Unmarshal(m, b)
@@ -1718,7 +1720,7 @@ func (m *LastCommitForPathRequest) Reset() { *m = LastCommitForPathReque
func (m *LastCommitForPathRequest) String() string { return proto.CompactTextString(m) }
func (*LastCommitForPathRequest) ProtoMessage() {}
func (*LastCommitForPathRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{29}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{29}
}
func (m *LastCommitForPathRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LastCommitForPathRequest.Unmarshal(m, b)
@@ -1771,7 +1773,7 @@ func (m *LastCommitForPathResponse) Reset() { *m = LastCommitForPathResp
func (m *LastCommitForPathResponse) String() string { return proto.CompactTextString(m) }
func (*LastCommitForPathResponse) ProtoMessage() {}
func (*LastCommitForPathResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{30}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{30}
}
func (m *LastCommitForPathResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LastCommitForPathResponse.Unmarshal(m, b)
@@ -1814,7 +1816,7 @@ func (m *ListLastCommitsForTreeRequest) Reset() { *m = ListLastCommitsFo
func (m *ListLastCommitsForTreeRequest) String() string { return proto.CompactTextString(m) }
func (*ListLastCommitsForTreeRequest) ProtoMessage() {}
func (*ListLastCommitsForTreeRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{31}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{31}
}
func (m *ListLastCommitsForTreeRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListLastCommitsForTreeRequest.Unmarshal(m, b)
@@ -1880,7 +1882,7 @@ func (m *ListLastCommitsForTreeResponse) Reset() { *m = ListLastCommitsF
func (m *ListLastCommitsForTreeResponse) String() string { return proto.CompactTextString(m) }
func (*ListLastCommitsForTreeResponse) ProtoMessage() {}
func (*ListLastCommitsForTreeResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{32}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{32}
}
func (m *ListLastCommitsForTreeResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListLastCommitsForTreeResponse.Unmarshal(m, b)
@@ -1909,7 +1911,6 @@ func (m *ListLastCommitsForTreeResponse) GetCommits() []*ListLastCommitsForTreeR
type ListLastCommitsForTreeResponse_CommitForTree struct {
Commit *GitCommit `protobuf:"bytes,2,opt,name=commit,proto3" json:"commit,omitempty"`
- Path string `protobuf:"bytes,3,opt,name=path,proto3" json:"path,omitempty"` // Deprecated: Do not use.
PathBytes []byte `protobuf:"bytes,4,opt,name=path_bytes,json=pathBytes,proto3" json:"path_bytes,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
@@ -1924,7 +1925,7 @@ func (m *ListLastCommitsForTreeResponse_CommitForTree) String() string {
}
func (*ListLastCommitsForTreeResponse_CommitForTree) ProtoMessage() {}
func (*ListLastCommitsForTreeResponse_CommitForTree) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{32, 0}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{32, 0}
}
func (m *ListLastCommitsForTreeResponse_CommitForTree) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListLastCommitsForTreeResponse_CommitForTree.Unmarshal(m, b)
@@ -1951,14 +1952,6 @@ func (m *ListLastCommitsForTreeResponse_CommitForTree) GetCommit() *GitCommit {
return nil
}
-// Deprecated: Do not use.
-func (m *ListLastCommitsForTreeResponse_CommitForTree) GetPath() string {
- if m != nil {
- return m.Path
- }
- return ""
-}
-
func (m *ListLastCommitsForTreeResponse_CommitForTree) GetPathBytes() []byte {
if m != nil {
return m.PathBytes
@@ -1982,7 +1975,7 @@ func (m *CommitsByMessageRequest) Reset() { *m = CommitsByMessageRequest
func (m *CommitsByMessageRequest) String() string { return proto.CompactTextString(m) }
func (*CommitsByMessageRequest) ProtoMessage() {}
func (*CommitsByMessageRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{33}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{33}
}
func (m *CommitsByMessageRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommitsByMessageRequest.Unmarshal(m, b)
@@ -2056,7 +2049,7 @@ func (m *CommitsByMessageResponse) Reset() { *m = CommitsByMessageRespon
func (m *CommitsByMessageResponse) String() string { return proto.CompactTextString(m) }
func (*CommitsByMessageResponse) ProtoMessage() {}
func (*CommitsByMessageResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{34}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{34}
}
func (m *CommitsByMessageResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommitsByMessageResponse.Unmarshal(m, b)
@@ -2095,7 +2088,7 @@ func (m *FilterShasWithSignaturesRequest) Reset() { *m = FilterShasWithS
func (m *FilterShasWithSignaturesRequest) String() string { return proto.CompactTextString(m) }
func (*FilterShasWithSignaturesRequest) ProtoMessage() {}
func (*FilterShasWithSignaturesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{35}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{35}
}
func (m *FilterShasWithSignaturesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FilterShasWithSignaturesRequest.Unmarshal(m, b)
@@ -2140,7 +2133,7 @@ func (m *FilterShasWithSignaturesResponse) Reset() { *m = FilterShasWith
func (m *FilterShasWithSignaturesResponse) String() string { return proto.CompactTextString(m) }
func (*FilterShasWithSignaturesResponse) ProtoMessage() {}
func (*FilterShasWithSignaturesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{36}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{36}
}
func (m *FilterShasWithSignaturesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FilterShasWithSignaturesResponse.Unmarshal(m, b)
@@ -2179,7 +2172,7 @@ func (m *ExtractCommitSignatureRequest) Reset() { *m = ExtractCommitSign
func (m *ExtractCommitSignatureRequest) String() string { return proto.CompactTextString(m) }
func (*ExtractCommitSignatureRequest) ProtoMessage() {}
func (*ExtractCommitSignatureRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{37}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{37}
}
func (m *ExtractCommitSignatureRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ExtractCommitSignatureRequest.Unmarshal(m, b)
@@ -2227,7 +2220,7 @@ func (m *ExtractCommitSignatureResponse) Reset() { *m = ExtractCommitSig
func (m *ExtractCommitSignatureResponse) String() string { return proto.CompactTextString(m) }
func (*ExtractCommitSignatureResponse) ProtoMessage() {}
func (*ExtractCommitSignatureResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{38}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{38}
}
func (m *ExtractCommitSignatureResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ExtractCommitSignatureResponse.Unmarshal(m, b)
@@ -2273,7 +2266,7 @@ func (m *GetCommitSignaturesRequest) Reset() { *m = GetCommitSignaturesR
func (m *GetCommitSignaturesRequest) String() string { return proto.CompactTextString(m) }
func (*GetCommitSignaturesRequest) ProtoMessage() {}
func (*GetCommitSignaturesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{39}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{39}
}
func (m *GetCommitSignaturesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetCommitSignaturesRequest.Unmarshal(m, b)
@@ -2322,7 +2315,7 @@ func (m *GetCommitSignaturesResponse) Reset() { *m = GetCommitSignatures
func (m *GetCommitSignaturesResponse) String() string { return proto.CompactTextString(m) }
func (*GetCommitSignaturesResponse) ProtoMessage() {}
func (*GetCommitSignaturesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{40}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{40}
}
func (m *GetCommitSignaturesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetCommitSignaturesResponse.Unmarshal(m, b)
@@ -2375,7 +2368,7 @@ func (m *GetCommitMessagesRequest) Reset() { *m = GetCommitMessagesReque
func (m *GetCommitMessagesRequest) String() string { return proto.CompactTextString(m) }
func (*GetCommitMessagesRequest) ProtoMessage() {}
func (*GetCommitMessagesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{41}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{41}
}
func (m *GetCommitMessagesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetCommitMessagesRequest.Unmarshal(m, b)
@@ -2422,7 +2415,7 @@ func (m *GetCommitMessagesResponse) Reset() { *m = GetCommitMessagesResp
func (m *GetCommitMessagesResponse) String() string { return proto.CompactTextString(m) }
func (*GetCommitMessagesResponse) ProtoMessage() {}
func (*GetCommitMessagesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_commit_7c6d8f89a2a6add9, []int{42}
+ return fileDescriptor_commit_f204cf5f75ab83d2, []int{42}
}
func (m *GetCommitMessagesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetCommitMessagesResponse.Unmarshal(m, b)
@@ -3631,131 +3624,130 @@ var _CommitService_serviceDesc = grpc.ServiceDesc{
Metadata: "commit.proto",
}
-func init() { proto.RegisterFile("commit.proto", fileDescriptor_commit_7c6d8f89a2a6add9) }
-
-var fileDescriptor_commit_7c6d8f89a2a6add9 = []byte{
- // 1964 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x59, 0x49, 0x6f, 0xe3, 0xc8,
- 0x15, 0x36, 0xb5, 0x99, 0x7c, 0x52, 0x3c, 0x72, 0xf5, 0x46, 0xd3, 0x76, 0xdb, 0xc3, 0x99, 0x9e,
- 0x78, 0x30, 0x19, 0xd9, 0x70, 0x16, 0x24, 0xb9, 0x04, 0xd6, 0xb4, 0xed, 0xb4, 0xd3, 0xdd, 0x1a,
- 0xd0, 0x02, 0x1a, 0x19, 0x04, 0x10, 0x28, 0xb1, 0x24, 0x73, 0x4c, 0x89, 0x6a, 0xb2, 0x64, 0x5b,
- 0x01, 0x72, 0x09, 0x82, 0xdc, 0x03, 0x04, 0xc9, 0x39, 0x3f, 0x60, 0x7e, 0x40, 0x8e, 0x39, 0xe6,
- 0x9a, 0x7f, 0x92, 0x1c, 0x73, 0x0a, 0x6a, 0x21, 0x8b, 0x14, 0x49, 0xbb, 0xbb, 0xdd, 0xee, 0x5c,
- 0x6c, 0xd6, 0xab, 0xe5, 0x2d, 0x55, 0xef, 0x7b, 0x8b, 0xa0, 0x31, 0xf0, 0xc7, 0x63, 0x97, 0xb4,
- 0xa6, 0x81, 0x4f, 0x7c, 0x54, 0x1b, 0xb9, 0xc4, 0xf6, 0xe6, 0x46, 0x23, 0x3c, 0xb3, 0x03, 0xec,
- 0x70, 0xaa, 0xb1, 0x35, 0xf2, 0xfd, 0x91, 0x87, 0x77, 0xd9, 0xa8, 0x3f, 0x1b, 0xee, 0x12, 0x77,
- 0x8c, 0x43, 0x62, 0x8f, 0xa7, 0x7c, 0x81, 0xe9, 0x01, 0xfa, 0x8a, 0x1d, 0x73, 0x4a, 0x6c, 0x12,
- 0x5a, 0xf8, 0xf5, 0x0c, 0x87, 0x04, 0xed, 0x03, 0x04, 0x78, 0xea, 0x87, 0x2e, 0xf1, 0x83, 0xb9,
- 0xae, 0x6c, 0x2b, 0x3b, 0xf5, 0x7d, 0xd4, 0xe2, 0x1c, 0x5a, 0x56, 0x3c, 0x63, 0x25, 0x56, 0x21,
- 0x03, 0xd4, 0x00, 0x5f, 0xb8, 0xa1, 0xeb, 0x4f, 0xf4, 0xd2, 0xb6, 0xb2, 0xd3, 0xb0, 0xe2, 0xf1,
- 0xcf, 0x6b, 0xff, 0xf9, 0xeb, 0x4e, 0x49, 0x2d, 0x99, 0x03, 0xb8, 0x97, 0xe2, 0x16, 0x4e, 0xfd,
- 0x49, 0x88, 0x51, 0x13, 0xca, 0xbe, 0xeb, 0x30, 0x3e, 0x9a, 0x45, 0x3f, 0xd1, 0x06, 0x68, 0xb6,
- 0xe3, 0xb8, 0xc4, 0xf5, 0x27, 0x21, 0x3b, 0xad, 0x6a, 0x49, 0x02, 0x9d, 0x75, 0xb0, 0x87, 0xf9,
- 0x6c, 0x99, 0xcf, 0xc6, 0x04, 0xf3, 0x4f, 0x0a, 0x3c, 0xe2, 0x5c, 0x9e, 0x85, 0x07, 0x93, 0x01,
- 0x0e, 0x89, 0x1f, 0xdc, 0x46, 0xb1, 0x2d, 0xa8, 0xdb, 0xe2, 0x98, 0x9e, 0xeb, 0x30, 0x69, 0x34,
- 0x0b, 0x22, 0xd2, 0x33, 0x07, 0xad, 0x81, 0x3a, 0x38, 0x73, 0x3d, 0x87, 0xce, 0x96, 0xd9, 0xec,
- 0x32, 0x1b, 0x3f, 0x73, 0x62, 0xc5, 0xf7, 0x40, 0xcf, 0x8a, 0x24, 0xb4, 0xbf, 0x0f, 0xd5, 0x0b,
- 0xdb, 0x9b, 0x61, 0x26, 0x8e, 0x6a, 0xf1, 0x81, 0xf9, 0x67, 0x05, 0x9a, 0xdd, 0x00, 0xe3, 0xc3,
- 0x09, 0x09, 0xe6, 0x77, 0x74, 0x2f, 0x08, 0x41, 0x65, 0x6a, 0x93, 0x33, 0x26, 0x75, 0xc3, 0x62,
- 0xdf, 0x54, 0x1c, 0xcf, 0x1d, 0xbb, 0x44, 0xaf, 0x6c, 0x2b, 0x3b, 0x65, 0x8b, 0x0f, 0x62, 0x45,
- 0xfe, 0xa5, 0xc0, 0x6a, 0x42, 0x2c, 0xa1, 0xc2, 0x4f, 0xa1, 0x42, 0xe6, 0x53, 0xae, 0xc1, 0xca,
- 0xfe, 0xa7, 0x91, 0x44, 0x99, 0x85, 0xad, 0x4e, 0xff, 0x5b, 0x3c, 0x20, 0xdd, 0xf9, 0x14, 0x5b,
- 0x6c, 0x47, 0x74, 0xf5, 0x25, 0x79, 0xf5, 0x08, 0x2a, 0xa1, 0xfb, 0x5b, 0xcc, 0x64, 0x2a, 0x5b,
- 0xec, 0x9b, 0xd2, 0xc6, 0xbe, 0x83, 0x99, 0x48, 0x55, 0x8b, 0x7d, 0x53, 0x9a, 0x63, 0x13, 0x5b,
- 0xaf, 0x72, 0xd9, 0xe9, 0xb7, 0xf9, 0x63, 0x00, 0xc9, 0x01, 0x01, 0xd4, 0xbe, 0xea, 0xbc, 0x78,
- 0xf1, 0xac, 0xdb, 0x5c, 0x42, 0x2a, 0x54, 0xda, 0xcf, 0x3b, 0xed, 0xa6, 0x42, 0xbf, 0xba, 0xd6,
- 0xe1, 0x61, 0xb3, 0x84, 0x96, 0xa1, 0xdc, 0x3d, 0x38, 0x6e, 0x96, 0xcd, 0x4b, 0x78, 0xc0, 0x6f,
- 0x27, 0x6c, 0x63, 0x72, 0x89, 0xf1, 0xe4, 0x36, 0xf6, 0x46, 0x50, 0x19, 0x06, 0xfe, 0x58, 0xd8,
- 0x9a, 0x7d, 0xa3, 0x15, 0x28, 0x11, 0x5f, 0x58, 0xb9, 0x44, 0xfc, 0xd8, 0x9a, 0x87, 0xf0, 0x70,
- 0x91, 0xb1, 0xb0, 0xe8, 0x17, 0xb0, 0xcc, 0xdd, 0x3b, 0xd4, 0x95, 0xed, 0xf2, 0x4e, 0x7d, 0x7f,
- 0x35, 0x62, 0x7b, 0xec, 0x12, 0xbe, 0xc7, 0x8a, 0x56, 0x98, 0x7f, 0x29, 0x51, 0xbf, 0x9a, 0x4d,
- 0xc4, 0xc4, 0x5d, 0xb9, 0x31, 0xda, 0x83, 0xaa, 0x3d, 0x24, 0x38, 0x60, 0x9a, 0xd4, 0xf7, 0x8d,
- 0x16, 0x47, 0x97, 0x56, 0x84, 0x2e, 0xad, 0x6e, 0x84, 0x2e, 0x16, 0x5f, 0x88, 0xf6, 0xa1, 0xd6,
- 0xc7, 0x43, 0x3f, 0xe0, 0x57, 0x77, 0xfd, 0x16, 0xb1, 0x32, 0x7e, 0x94, 0xd5, 0xc4, 0xa3, 0x5c,
- 0x07, 0x6d, 0x6c, 0x5f, 0xf5, 0x06, 0x54, 0x49, 0xbd, 0xc6, 0x5e, 0x81, 0x3a, 0xb6, 0xaf, 0x98,
- 0xd2, 0xf4, 0x0d, 0xd9, 0x9e, 0xa7, 0x2f, 0x33, 0xf7, 0xa1, 0x9f, 0xb1, 0x7d, 0x7f, 0x00, 0xf7,
- 0xd3, 0x76, 0x91, 0x2e, 0xc7, 0x8f, 0x52, 0xd8, 0x51, 0x7c, 0x60, 0x7e, 0xa7, 0xc0, 0x06, 0x5b,
- 0xfe, 0xd4, 0xbd, 0xc0, 0xc1, 0xc8, 0x9d, 0x8c, 0xde, 0x83, 0x3d, 0xdf, 0xe0, 0x39, 0xa4, 0xb5,
- 0x5b, 0x4e, 0x6b, 0x17, 0xe9, 0x72, 0x52, 0x51, 0x2b, 0xcd, 0xea, 0x49, 0x45, 0xad, 0x36, 0x6b,
- 0x27, 0x15, 0xb5, 0xd6, 0x5c, 0x36, 0x7b, 0xb0, 0x59, 0x20, 0xae, 0x50, 0x73, 0x13, 0xc0, 0xc3,
- 0x43, 0xd2, 0x4b, 0xea, 0xaa, 0x51, 0x0a, 0xb7, 0xdb, 0x16, 0xd4, 0x03, 0x77, 0x74, 0x16, 0xcd,
- 0x73, 0x98, 0x05, 0x46, 0x62, 0x0b, 0xcc, 0xff, 0x2a, 0xa0, 0xc5, 0x3e, 0x9c, 0x83, 0xd2, 0x6b,
- 0xa0, 0x06, 0xbe, 0x4f, 0x7a, 0xd2, 0x83, 0x97, 0xe9, 0xb8, 0xc3, 0xbd, 0x38, 0x83, 0x2c, 0xbb,
- 0x02, 0x25, 0x2a, 0x0c, 0x25, 0xd6, 0x33, 0x28, 0xd1, 0x62, 0x7f, 0x13, 0xe0, 0x10, 0xb9, 0x7d,
- 0x35, 0xe1, 0xf6, 0x9b, 0x00, 0xfc, 0xd9, 0x33, 0xae, 0x35, 0xc6, 0x55, 0xe3, 0x14, 0xca, 0x77,
- 0x1d, 0xb4, 0xa1, 0x67, 0x93, 0x1e, 0x63, 0xbe, 0xcc, 0xdf, 0x2f, 0x25, 0x7c, 0x6d, 0x93, 0x33,
- 0xf3, 0x0b, 0xd0, 0x62, 0x16, 0x31, 0x22, 0x2c, 0xc5, 0x88, 0xa0, 0x24, 0x10, 0xa3, 0x6c, 0xfe,
- 0x4d, 0x81, 0x07, 0xc7, 0x98, 0x44, 0xd2, 0xb9, 0x38, 0xfc, 0x90, 0x28, 0xbc, 0x01, 0x5a, 0x80,
- 0x07, 0xb3, 0x20, 0x74, 0x2f, 0xb8, 0xc1, 0x54, 0x4b, 0x12, 0x92, 0xf8, 0xb1, 0x28, 0xa2, 0xc4,
- 0x0f, 0xcc, 0x49, 0x8b, 0xf8, 0x21, 0x41, 0x39, 0x5a, 0x61, 0x7e, 0x0b, 0xcd, 0xe7, 0x6e, 0x48,
- 0x8e, 0x5c, 0x0f, 0xdf, 0x79, 0x0a, 0xf0, 0x39, 0xac, 0x26, 0x78, 0x49, 0x7f, 0xa4, 0x5a, 0x73,
- 0x59, 0x1b, 0x16, 0x1f, 0x98, 0xe7, 0xb0, 0x7a, 0xe4, 0x4e, 0x1c, 0x81, 0x76, 0x77, 0x2c, 0xd7,
- 0x2f, 0x00, 0x25, 0x99, 0x09, 0xc1, 0x3e, 0x87, 0x1a, 0x7f, 0x5b, 0x82, 0x53, 0x0e, 0x0a, 0x8b,
- 0x05, 0xe6, 0x08, 0x1e, 0x51, 0xc5, 0x22, 0x3c, 0x9f, 0x77, 0x5c, 0xe7, 0x36, 0x32, 0xc7, 0x81,
- 0xb1, 0x2c, 0xbc, 0x2d, 0x96, 0xf4, 0x18, 0xf4, 0x2c, 0xa3, 0x77, 0x09, 0x1b, 0xbf, 0x2f, 0xc1,
- 0x03, 0xaa, 0xf3, 0x81, 0xe7, 0xdd, 0x71, 0xe0, 0x48, 0x01, 0x5c, 0x79, 0x01, 0xbe, 0x69, 0xc0,
- 0x3f, 0x77, 0xa7, 0x51, 0x70, 0xa7, 0xdf, 0xe8, 0x67, 0x50, 0xf5, 0x03, 0x07, 0x07, 0xcc, 0xf5,
- 0x57, 0xf6, 0x3f, 0x89, 0x78, 0xe7, 0x8a, 0xdb, 0xea, 0xd0, 0xa5, 0x16, 0xdf, 0x61, 0x3e, 0x81,
- 0x2a, 0x1b, 0x53, 0xb7, 0x7e, 0xd9, 0x79, 0x79, 0x28, 0x1c, 0xbc, 0xf3, 0x75, 0x87, 0x07, 0xff,
- 0xa7, 0x07, 0xdd, 0xc3, 0x66, 0x29, 0xe9, 0x42, 0x8b, 0x87, 0xbe, 0x8b, 0x2d, 0xff, 0x50, 0x4e,
- 0xbe, 0x9f, 0x3b, 0x33, 0x64, 0x9c, 0x9c, 0x71, 0x23, 0xf2, 0x01, 0x7a, 0x08, 0x35, 0x7f, 0x38,
- 0x0c, 0x31, 0x11, 0x36, 0x14, 0x23, 0xe9, 0x56, 0xd5, 0x84, 0x5b, 0xd1, 0xd5, 0x43, 0xdf, 0xf3,
- 0xfc, 0x4b, 0x86, 0x9e, 0xaa, 0x25, 0x46, 0x34, 0x1c, 0x50, 0xdb, 0xf7, 0xc6, 0x38, 0x18, 0xe1,
- 0x50, 0x84, 0x53, 0xa0, 0xa4, 0x17, 0x8c, 0x82, 0x3e, 0x86, 0x86, 0xe3, 0x86, 0x76, 0xdf, 0xc3,
- 0xbd, 0x4b, 0xdb, 0x3b, 0xd7, 0x55, 0xb6, 0xa2, 0x2e, 0x68, 0xaf, 0x6c, 0xef, 0x5c, 0x66, 0x08,
- 0xda, 0xdb, 0x67, 0x08, 0xf0, 0xc6, 0x19, 0x82, 0x08, 0xf8, 0xf5, 0x6c, 0xc0, 0x6f, 0xc3, 0xbd,
- 0xd4, 0x2d, 0xbc, 0xcb, 0x55, 0x4e, 0xa3, 0xa4, 0xec, 0xb9, 0x3d, 0x19, 0xcd, 0xec, 0xd1, 0xdd,
- 0x63, 0xe2, 0x77, 0x71, 0xc5, 0x92, 0x60, 0x29, 0x44, 0x3f, 0x02, 0xcd, 0x8b, 0x88, 0x42, 0xf8,
- 0x9d, 0x88, 0x65, 0xc1, 0x9e, 0x56, 0x44, 0xb1, 0xe4, 0x56, 0xe3, 0x04, 0xd4, 0x88, 0x4c, 0x3d,
- 0x6e, 0x62, 0x8f, 0xb1, 0x08, 0xe5, 0xec, 0x9b, 0xbe, 0x15, 0x56, 0x39, 0x32, 0x21, 0x4b, 0x16,
- 0x1f, 0xf0, 0x44, 0xc9, 0xf3, 0x03, 0x51, 0xd7, 0xf0, 0x81, 0xf9, 0x3b, 0xf8, 0xc8, 0xb2, 0x2f,
- 0xdb, 0x9e, 0x3d, 0xc6, 0x1f, 0x30, 0x26, 0xc6, 0xe6, 0xfa, 0x0c, 0x9a, 0x92, 0xbd, 0x30, 0x53,
- 0x54, 0x0d, 0x28, 0x89, 0x6a, 0xe0, 0x8f, 0x0a, 0xe8, 0xcf, 0xed, 0x08, 0x29, 0x8f, 0xfc, 0x80,
- 0x26, 0x01, 0xff, 0x0f, 0x81, 0x8f, 0x60, 0x2d, 0x47, 0x8e, 0xb7, 0x0f, 0x31, 0x7f, 0x57, 0x60,
- 0x93, 0x42, 0xbf, 0x3c, 0x2c, 0x3c, 0xf2, 0x03, 0x1a, 0xd0, 0xdf, 0xa7, 0x56, 0xda, 0xdb, 0x14,
- 0x88, 0x39, 0x18, 0x54, 0x4d, 0x62, 0x50, 0x6c, 0x83, 0x7f, 0x2b, 0xf0, 0xb8, 0x48, 0x76, 0x61,
- 0x89, 0x97, 0x8b, 0x5e, 0xfa, 0xa3, 0x48, 0xf2, 0xeb, 0x37, 0xb6, 0x62, 0xc3, 0x32, 0x6a, 0x74,
- 0x88, 0x71, 0x09, 0xdf, 0x4b, 0xcd, 0x24, 0x4c, 0x5d, 0xba, 0xc1, 0xd4, 0xe8, 0x61, 0x42, 0x71,
- 0xad, 0x5d, 0xd2, 0x15, 0xa1, 0xfc, 0x26, 0x00, 0xfd, 0xdf, 0xeb, 0xcf, 0x09, 0x0e, 0x99, 0x05,
- 0x1a, 0x96, 0x46, 0x29, 0x6d, 0x4a, 0x38, 0xa9, 0xa8, 0x4a, 0x22, 0xb6, 0xfc, 0x33, 0xf6, 0xeb,
- 0xb0, 0x3d, 0x7f, 0x81, 0xc3, 0x90, 0xfa, 0xe4, 0x1d, 0xbd, 0x3f, 0x69, 0xff, 0xf2, 0x62, 0x0c,
- 0xc8, 0xb9, 0xad, 0xbc, 0x1a, 0xeb, 0x3e, 0x54, 0x5f, 0xcf, 0x70, 0x30, 0x17, 0x49, 0x35, 0x1f,
- 0x24, 0xb3, 0x8e, 0xac, 0x2a, 0xef, 0x02, 0xaf, 0xaf, 0x61, 0xeb, 0xc8, 0xf5, 0x08, 0x0e, 0x4e,
- 0xcf, 0xec, 0xf0, 0x95, 0x4b, 0xce, 0x4e, 0xdd, 0xd1, 0xc4, 0x26, 0xb3, 0x00, 0xdf, 0xb6, 0xce,
- 0x0a, 0xcf, 0xec, 0x90, 0x25, 0x4c, 0x0d, 0x8b, 0x7d, 0xc7, 0xb2, 0xff, 0x04, 0xb6, 0x8b, 0x59,
- 0x4a, 0x00, 0x61, 0xfb, 0x15, 0xb9, 0xdf, 0xbc, 0x82, 0xcd, 0xc3, 0x2b, 0x12, 0xd8, 0x03, 0xa1,
- 0x44, 0xbc, 0xed, 0x36, 0x82, 0xae, 0x83, 0x28, 0x57, 0x64, 0x33, 0x49, 0xe5, 0x84, 0x44, 0xbf,
- 0xa8, 0x07, 0x8f, 0x8b, 0x38, 0x0b, 0x79, 0x37, 0x40, 0x0b, 0x23, 0xa2, 0x40, 0x3d, 0x49, 0x60,
- 0xb1, 0xdc, 0x1d, 0x4d, 0xb0, 0xd3, 0x23, 0xf8, 0x8a, 0x88, 0xc7, 0x02, 0x9c, 0xd4, 0xc5, 0x57,
- 0xc4, 0xbc, 0x04, 0xe3, 0x18, 0x2f, 0x1e, 0x7e, 0xab, 0x0b, 0x90, 0x85, 0x99, 0xeb, 0x84, 0x22,
- 0x6f, 0xd5, 0x22, 0xc5, 0xe4, 0x5d, 0xcc, 0x61, 0x3d, 0x97, 0xb1, 0x50, 0x2b, 0x65, 0x1d, 0x25,
- 0x6d, 0x9d, 0xb4, 0xce, 0xa5, 0x1b, 0x74, 0x2e, 0x67, 0x74, 0x9e, 0x81, 0x1e, 0xb3, 0x16, 0x4f,
- 0xf8, 0x43, 0x68, 0x6c, 0xc1, 0x5a, 0x0e, 0xdb, 0x37, 0xd1, 0x57, 0x87, 0xe5, 0x31, 0xdf, 0x20,
- 0xb4, 0x8d, 0x86, 0xfb, 0xff, 0x58, 0x89, 0xb0, 0xed, 0x14, 0x07, 0x17, 0xee, 0x00, 0xa3, 0x57,
- 0xd0, 0x5c, 0xec, 0x30, 0xa2, 0xad, 0x74, 0xa2, 0x90, 0x69, 0x87, 0x1a, 0xdb, 0xc5, 0x0b, 0xb8,
- 0x7c, 0xe6, 0x12, 0x7a, 0x9a, 0xec, 0x01, 0xe8, 0x39, 0xad, 0x3d, 0x7e, 0xd4, 0x5a, 0x61, 0xd3,
- 0xcf, 0x5c, 0xda, 0x53, 0xd0, 0x29, 0xac, 0xa4, 0x3b, 0x5d, 0x68, 0x33, 0xcd, 0x7b, 0xa1, 0xf5,
- 0x66, 0x3c, 0x2e, 0x9a, 0x4e, 0x1c, 0xfa, 0x2b, 0x68, 0x24, 0xdb, 0x3b, 0x68, 0x5d, 0xee, 0xc9,
- 0x34, 0xc3, 0x8c, 0x8d, 0xfc, 0xc9, 0x58, 0xcf, 0x21, 0x3c, 0xc8, 0xed, 0xa6, 0xa0, 0x4f, 0x53,
- 0x1b, 0x0b, 0x7a, 0x43, 0xc6, 0x93, 0x1b, 0x56, 0xc5, 0x7c, 0x4e, 0x61, 0x25, 0x5d, 0xb3, 0x4b,
- 0x4b, 0xe4, 0xb6, 0x1b, 0xa4, 0x25, 0xf2, 0x4b, 0x7d, 0x66, 0x89, 0xa7, 0xa0, 0xc5, 0x55, 0xb5,
- 0xbc, 0xa4, 0xc5, 0xa2, 0x5e, 0x5e, 0x52, 0xa6, 0x04, 0x67, 0xa7, 0x1c, 0x02, 0xc8, 0xec, 0x19,
- 0xad, 0x25, 0x8b, 0xae, 0x54, 0x11, 0x6e, 0x18, 0x79, 0x53, 0xb1, 0x86, 0xbf, 0x84, 0x7a, 0xa2,
- 0xcb, 0x8f, 0x8c, 0xf4, 0x4d, 0x26, 0x7f, 0x68, 0x30, 0xd6, 0x73, 0xe7, 0x92, 0xb6, 0x4a, 0x17,
- 0x67, 0xd2, 0x56, 0xb9, 0x95, 0xa0, 0xb4, 0x55, 0x7e, 0x4d, 0xc7, 0xb4, 0x3c, 0x81, 0x7a, 0xa2,
- 0x46, 0x40, 0x39, 0xba, 0x64, 0xc5, 0xcb, 0x29, 0x2a, 0xd8, 0x59, 0x5d, 0xf8, 0x68, 0x21, 0x09,
- 0x47, 0x8f, 0x0b, 0xb3, 0x73, 0x7e, 0xe6, 0xd6, 0x0d, 0xd9, 0xbb, 0xb9, 0x84, 0x0e, 0x40, 0x8d,
- 0x12, 0x5c, 0xf4, 0x28, 0x06, 0xa1, 0x74, 0xc6, 0x6d, 0xe8, 0xd9, 0x89, 0x84, 0x60, 0xdf, 0xc0,
- 0x6a, 0x26, 0xe5, 0x44, 0xb1, 0xbb, 0x17, 0x65, 0xc5, 0xc6, 0xc7, 0xd7, 0xac, 0x88, 0xc5, 0x3b,
- 0x87, 0x87, 0xf9, 0x09, 0x19, 0x7a, 0x72, 0x53, 0xc2, 0xc6, 0xb9, 0x7c, 0xf6, 0x66, 0x79, 0x1d,
- 0x53, 0xe4, 0xd7, 0x11, 0xae, 0xc9, 0xbc, 0x63, 0x11, 0xd7, 0x32, 0xc9, 0xd5, 0x22, 0xae, 0x65,
- 0x53, 0x96, 0xe8, 0xe8, 0xc5, 0x46, 0x8a, 0x3c, 0xba, 0xa0, 0x97, 0x23, 0x8f, 0x2e, 0xea, 0xc1,
- 0xb0, 0xa3, 0x43, 0xd0, 0x8b, 0x32, 0x0e, 0xf4, 0x7d, 0xf9, 0xa8, 0xae, 0x4d, 0x83, 0x8c, 0x9d,
- 0x9b, 0x17, 0x46, 0x2c, 0x77, 0x94, 0x3d, 0x85, 0xde, 0x4b, 0x7e, 0xd2, 0x20, 0xef, 0xe5, 0xda,
- 0x74, 0x46, 0xde, 0xcb, 0xf5, 0xb9, 0x07, 0xd3, 0xb0, 0x0f, 0xf7, 0x72, 0xe2, 0x38, 0x32, 0x13,
- 0x60, 0x55, 0x90, 0x5d, 0x18, 0x9f, 0x5c, 0xbb, 0x26, 0xc1, 0xe3, 0x37, 0xb0, 0x9a, 0x89, 0x9c,
- 0xf2, 0x11, 0x17, 0xc5, 0x72, 0xf9, 0x88, 0x0b, 0xc3, 0x2e, 0x3d, 0xbd, 0xbd, 0xf7, 0x0d, 0x5d,
- 0xe7, 0xd9, 0xfd, 0xd6, 0xc0, 0x1f, 0xef, 0xf2, 0xcf, 0x2f, 0xfd, 0x60, 0xb4, 0xcb, 0x77, 0x7f,
- 0xc9, 0x1a, 0x10, 0xbb, 0x23, 0x5f, 0x8c, 0xa7, 0xfd, 0x7e, 0x8d, 0x91, 0x7e, 0xf8, 0xbf, 0x00,
- 0x00, 0x00, 0xff, 0xff, 0x3a, 0x20, 0x66, 0x97, 0x7a, 0x1d, 0x00, 0x00,
+func init() { proto.RegisterFile("commit.proto", fileDescriptor_commit_f204cf5f75ab83d2) }
+
+var fileDescriptor_commit_f204cf5f75ab83d2 = []byte{
+ // 1937 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x5b, 0x6f, 0xdb, 0xc8,
+ 0x15, 0x5e, 0xea, 0x4a, 0x1e, 0xa9, 0x8e, 0x3c, 0xb9, 0xc9, 0xb4, 0x1d, 0x7b, 0xb9, 0x9b, 0xad,
+ 0x17, 0xdb, 0x95, 0x0d, 0xf7, 0x82, 0xf6, 0xa9, 0x88, 0x77, 0x6d, 0xc3, 0x6e, 0x12, 0xa5, 0x8c,
+ 0x80, 0xc5, 0x2e, 0x50, 0xa8, 0x94, 0x38, 0x92, 0xd8, 0x50, 0xa2, 0x42, 0x8e, 0x1c, 0xab, 0x0f,
+ 0x7d, 0x2f, 0x50, 0xf4, 0xb5, 0xe8, 0x0f, 0xe8, 0x63, 0x1f, 0xfa, 0x0b, 0x8a, 0xfe, 0x85, 0xbe,
+ 0xf4, 0xbf, 0x04, 0x7d, 0x58, 0xcc, 0x85, 0x1c, 0x5e, 0xed, 0xc4, 0x5e, 0xe5, 0x85, 0xe0, 0x9c,
+ 0x39, 0x33, 0xe7, 0x32, 0x73, 0xbe, 0x73, 0xce, 0x40, 0x73, 0xe8, 0x4d, 0xa7, 0x0e, 0xe9, 0xcc,
+ 0x7d, 0x8f, 0x78, 0xa8, 0x36, 0x76, 0x88, 0xe5, 0x2e, 0xf5, 0x66, 0x30, 0xb1, 0x7c, 0x6c, 0x73,
+ 0xaa, 0xbe, 0x33, 0xf6, 0xbc, 0xb1, 0x8b, 0xf7, 0xd9, 0x68, 0xb0, 0x18, 0xed, 0x13, 0x67, 0x8a,
+ 0x03, 0x62, 0x4d, 0xe7, 0x9c, 0xc1, 0xb0, 0x01, 0x7d, 0xc5, 0xb6, 0x79, 0x49, 0x2c, 0x12, 0x98,
+ 0xf8, 0xf5, 0x02, 0x07, 0x04, 0x1d, 0x02, 0xf8, 0x78, 0xee, 0x05, 0x0e, 0xf1, 0xfc, 0x65, 0x5b,
+ 0xd9, 0x55, 0xf6, 0x1a, 0x87, 0xa8, 0xc3, 0x25, 0x74, 0xcc, 0x68, 0xc6, 0x8c, 0x71, 0x21, 0x1d,
+ 0x54, 0x1f, 0x5f, 0x38, 0x81, 0xe3, 0xcd, 0xda, 0xa5, 0x5d, 0x65, 0xaf, 0x69, 0x46, 0x63, 0x63,
+ 0x08, 0x77, 0x13, 0x52, 0x82, 0xb9, 0x37, 0x0b, 0x30, 0x6a, 0x41, 0xd9, 0x73, 0x6c, 0xb6, 0xbf,
+ 0x66, 0xd2, 0x5f, 0xb4, 0x05, 0x9a, 0x65, 0xdb, 0x0e, 0x71, 0xbc, 0x59, 0xc0, 0x76, 0xa9, 0x9a,
+ 0x92, 0x40, 0x67, 0x6d, 0xec, 0x62, 0x3e, 0x5b, 0xe6, 0xb3, 0x11, 0xc1, 0xf8, 0xb3, 0x02, 0x0f,
+ 0xb9, 0x94, 0xb3, 0xe0, 0xc9, 0x6c, 0x88, 0x03, 0xe2, 0xf9, 0xb7, 0x31, 0x68, 0x07, 0x1a, 0x96,
+ 0xd8, 0xa6, 0xef, 0xd8, 0x4c, 0x1b, 0xcd, 0x84, 0x90, 0x74, 0x66, 0xa3, 0x0d, 0x50, 0x87, 0x13,
+ 0xc7, 0xb5, 0xe9, 0x6c, 0x99, 0xcd, 0xd6, 0xd9, 0xf8, 0xcc, 0x36, 0x0e, 0xa0, 0x9d, 0x55, 0x45,
+ 0x58, 0x7d, 0x0f, 0xaa, 0x17, 0x96, 0xbb, 0xc0, 0x4c, 0x0d, 0xd5, 0xe4, 0x03, 0xe3, 0x2f, 0x0a,
+ 0xb4, 0x7a, 0x3e, 0xc6, 0xc7, 0x33, 0xe2, 0x2f, 0x57, 0x74, 0x0e, 0x08, 0x41, 0x65, 0x6e, 0x91,
+ 0x09, 0xd3, 0xb6, 0x69, 0xb2, 0x7f, 0xaa, 0x8e, 0xeb, 0x4c, 0x1d, 0xd2, 0xae, 0xec, 0x2a, 0x7b,
+ 0x65, 0x93, 0x0f, 0x8c, 0xff, 0x2a, 0xb0, 0x1e, 0x53, 0x47, 0xa8, 0xfe, 0x4b, 0xa8, 0x90, 0xe5,
+ 0x9c, 0x6b, 0xbe, 0x76, 0xf8, 0x69, 0xa8, 0x49, 0x86, 0xb1, 0xd3, 0x1d, 0xfc, 0x01, 0x0f, 0x49,
+ 0x6f, 0x39, 0xc7, 0x26, 0x5b, 0x11, 0x1e, 0x75, 0x49, 0x1e, 0x35, 0x82, 0x4a, 0xe0, 0xfc, 0x11,
+ 0x33, 0x5d, 0xca, 0x26, 0xfb, 0xa7, 0xb4, 0xa9, 0x67, 0x63, 0xa6, 0x4a, 0xd5, 0x64, 0xff, 0x94,
+ 0x66, 0x5b, 0xc4, 0x6a, 0x57, 0xb9, 0xce, 0xf4, 0xdf, 0xf8, 0x39, 0x80, 0x94, 0x80, 0x00, 0x6a,
+ 0x5f, 0x75, 0x9f, 0x3d, 0x3b, 0xeb, 0xb5, 0x3e, 0x42, 0x2a, 0x54, 0x8e, 0x9e, 0x76, 0x8f, 0x5a,
+ 0x0a, 0xfd, 0xeb, 0x99, 0xc7, 0xc7, 0xad, 0x12, 0xaa, 0x43, 0xb9, 0xf7, 0xe4, 0xb4, 0x55, 0x36,
+ 0x3c, 0xb8, 0xcf, 0x4f, 0x25, 0x38, 0xc2, 0xe4, 0x0d, 0xc6, 0xb3, 0xdb, 0xf8, 0x19, 0x41, 0x65,
+ 0xe4, 0x7b, 0x53, 0xe1, 0x63, 0xf6, 0x8f, 0xd6, 0xa0, 0x44, 0x3c, 0xe1, 0xdd, 0x12, 0xf1, 0x8c,
+ 0x63, 0x78, 0x90, 0x16, 0x28, 0x3c, 0xf9, 0x05, 0xd4, 0x79, 0xf8, 0x06, 0x6d, 0x65, 0xb7, 0xbc,
+ 0xd7, 0x38, 0x5c, 0x0f, 0xc5, 0x9d, 0x3a, 0x84, 0xaf, 0x31, 0x43, 0x0e, 0xe3, 0xaf, 0x25, 0x1a,
+ 0x3f, 0x8b, 0x99, 0x98, 0x58, 0x55, 0x98, 0xa2, 0x03, 0xa8, 0x5a, 0x23, 0x82, 0x7d, 0x66, 0x41,
+ 0xe3, 0x50, 0xef, 0x70, 0xf4, 0xe8, 0x84, 0xe8, 0xd1, 0xe9, 0x85, 0xe8, 0x61, 0x72, 0x46, 0x74,
+ 0x08, 0xb5, 0x01, 0x1e, 0x79, 0x3e, 0x3f, 0xb2, 0xab, 0x97, 0x08, 0xce, 0xe8, 0x12, 0x56, 0x63,
+ 0x97, 0x70, 0x13, 0xb4, 0xa9, 0x75, 0xd9, 0x1f, 0x52, 0x23, 0xdb, 0x35, 0x76, 0xfa, 0xea, 0xd4,
+ 0xba, 0x64, 0x46, 0xd3, 0xbb, 0x63, 0xb9, 0x6e, 0xbb, 0xce, 0xc2, 0x85, 0xfe, 0x1a, 0x3f, 0x81,
+ 0x7b, 0x49, 0x7f, 0xc8, 0xd0, 0xe2, 0x5b, 0x28, 0x6c, 0x0b, 0x3e, 0x30, 0xfe, 0xa1, 0xc0, 0x16,
+ 0x63, 0xff, 0xda, 0xb9, 0xc0, 0xfe, 0xd8, 0x99, 0x8d, 0x7f, 0x00, 0x3f, 0xbe, 0xc3, 0xf1, 0x27,
+ 0xad, 0xaa, 0x27, 0xad, 0x3a, 0xaf, 0xa8, 0x95, 0x56, 0xf5, 0xbc, 0xa2, 0x56, 0x5b, 0xb5, 0xf3,
+ 0x8a, 0x5a, 0x6b, 0xd5, 0x8d, 0x3e, 0x6c, 0x17, 0xa8, 0x29, 0xcc, 0xdb, 0x06, 0x70, 0xf1, 0x88,
+ 0xf4, 0xe3, 0x36, 0x6a, 0x94, 0xc2, 0xfd, 0xb4, 0x03, 0x0d, 0xdf, 0x19, 0x4f, 0xc2, 0x79, 0x0e,
+ 0x9f, 0xc0, 0x48, 0x8c, 0xc1, 0x78, 0xab, 0x80, 0x16, 0xc5, 0x6a, 0x0e, 0xfa, 0x6e, 0x80, 0xea,
+ 0x7b, 0x1e, 0xe9, 0xcb, 0x48, 0xad, 0xd3, 0x71, 0x97, 0x47, 0x6b, 0x06, 0x39, 0xf6, 0x05, 0x1a,
+ 0x54, 0x18, 0x1a, 0x6c, 0x66, 0xd0, 0xa0, 0xc3, 0xbe, 0x31, 0x10, 0x08, 0xc3, 0xbb, 0x1a, 0x0b,
+ 0xef, 0x6d, 0x00, 0x7e, 0xcd, 0x99, 0xd4, 0x1a, 0x93, 0xaa, 0x71, 0x0a, 0x95, 0xbb, 0x09, 0xda,
+ 0xc8, 0xb5, 0x48, 0x9f, 0x09, 0xaf, 0xf3, 0xfb, 0x4a, 0x09, 0x2f, 0x2c, 0x32, 0x31, 0xbe, 0x00,
+ 0x2d, 0x12, 0x11, 0x45, 0xfe, 0x47, 0x51, 0xe4, 0x2b, 0x31, 0x64, 0x28, 0x1b, 0x7f, 0x57, 0xe0,
+ 0xfe, 0x29, 0x26, 0xa1, 0x76, 0x0e, 0x0e, 0x3e, 0x24, 0xca, 0x6e, 0x81, 0xe6, 0xe3, 0xe1, 0xc2,
+ 0x0f, 0x9c, 0x0b, 0xee, 0x30, 0xd5, 0x94, 0x04, 0x8a, 0x13, 0x69, 0xd5, 0x24, 0x4e, 0x60, 0x4e,
+ 0x4a, 0xe3, 0x84, 0x04, 0xdd, 0x90, 0xc3, 0x18, 0x40, 0xeb, 0xa9, 0x13, 0x90, 0x13, 0xc7, 0x5d,
+ 0x99, 0x71, 0xc6, 0xe7, 0xb0, 0x1e, 0x93, 0x21, 0xe3, 0x8e, 0x5a, 0xc9, 0x75, 0x6c, 0x9a, 0x7c,
+ 0x60, 0x0c, 0x61, 0xfd, 0xc4, 0x99, 0xd9, 0x02, 0xcd, 0x56, 0xa4, 0xcf, 0xaf, 0x01, 0xc5, 0x85,
+ 0x08, 0x85, 0x3e, 0x87, 0x1a, 0xbf, 0x43, 0x42, 0x42, 0x0e, 0xba, 0x0a, 0x06, 0xa3, 0x0f, 0x0f,
+ 0xa9, 0x41, 0x21, 0x4e, 0x2f, 0xbb, 0x8e, 0x7d, 0x1b, 0x5d, 0xa3, 0x44, 0x57, 0x16, 0x51, 0x65,
+ 0x9c, 0x42, 0x3b, 0x2b, 0xe0, 0x26, 0x69, 0xe0, 0xad, 0x02, 0xf7, 0xa9, 0xad, 0x4f, 0x5c, 0x77,
+ 0xc5, 0x89, 0x20, 0x01, 0x5c, 0xe5, 0x14, 0x1c, 0xd3, 0xc4, 0xfd, 0xca, 0x99, 0x87, 0x49, 0x9a,
+ 0xfe, 0xa3, 0x5f, 0x41, 0xd5, 0xf3, 0x6d, 0xec, 0xb3, 0xd0, 0x5e, 0x3b, 0xfc, 0x24, 0x94, 0x9d,
+ 0xab, 0x6e, 0xa7, 0x4b, 0x59, 0x4d, 0xbe, 0xc2, 0x78, 0x0c, 0x55, 0x36, 0xa6, 0x61, 0xfb, 0xbc,
+ 0xfb, 0xfc, 0x58, 0x04, 0x70, 0xf7, 0x45, 0x97, 0x27, 0xf1, 0xaf, 0x9f, 0xf4, 0x8e, 0x5b, 0x25,
+ 0x1a, 0x22, 0xe9, 0xcd, 0x6e, 0xe2, 0xc3, 0xff, 0x97, 0xe2, 0xf7, 0x65, 0x65, 0x0e, 0x8c, 0x8a,
+ 0x2a, 0xee, 0x3c, 0x3e, 0x40, 0x0f, 0xa0, 0xe6, 0x8d, 0x46, 0x01, 0x26, 0xc2, 0x77, 0x62, 0x24,
+ 0xc3, 0xa7, 0x1a, 0x0b, 0x1f, 0xca, 0x3d, 0xf2, 0x5c, 0xd7, 0x7b, 0xc3, 0x50, 0x51, 0x35, 0xc5,
+ 0x88, 0xc2, 0x3c, 0xf5, 0x79, 0x7f, 0x8a, 0xfd, 0x31, 0x0e, 0x44, 0x5a, 0x04, 0x4a, 0x7a, 0xc6,
+ 0x28, 0xe8, 0x63, 0x68, 0xda, 0x4e, 0x60, 0x0d, 0x5c, 0xdc, 0x7f, 0x63, 0xb9, 0xaf, 0xda, 0x2a,
+ 0xe3, 0x68, 0x08, 0xda, 0x37, 0x96, 0xfb, 0x4a, 0x66, 0x7a, 0xed, 0xfd, 0x33, 0x3d, 0xbc, 0x73,
+ 0xa6, 0x17, 0x89, 0xbb, 0x21, 0x13, 0xf7, 0x11, 0xdc, 0x4d, 0x78, 0xff, 0x26, 0x47, 0x38, 0x09,
+ 0x8b, 0xaa, 0xa7, 0xd6, 0x6c, 0xbc, 0xb0, 0xc6, 0xab, 0xc3, 0xba, 0x7f, 0x46, 0x1d, 0x45, 0x4c,
+ 0x94, 0x50, 0xf9, 0x04, 0x34, 0x37, 0x24, 0x0a, 0xa5, 0xf7, 0x42, 0x51, 0x05, 0x6b, 0x3a, 0x21,
+ 0xc5, 0x94, 0x4b, 0xf5, 0x73, 0x50, 0x43, 0x32, 0x8d, 0xac, 0x99, 0x35, 0xc5, 0x22, 0x25, 0xb3,
+ 0x7f, 0x7a, 0x37, 0x58, 0x47, 0xc7, 0x94, 0x2b, 0x99, 0x7c, 0xc0, 0x0b, 0x1d, 0xd7, 0xf3, 0x45,
+ 0xdf, 0xc1, 0x07, 0xc6, 0x02, 0xee, 0x98, 0xd6, 0x9b, 0x23, 0xd7, 0x9a, 0xe2, 0x0f, 0x98, 0xdb,
+ 0x8c, 0xcf, 0xa0, 0x25, 0xc5, 0x0a, 0xf7, 0x84, 0x55, 0xbb, 0x12, 0xab, 0xda, 0xff, 0x04, 0xed,
+ 0xa7, 0x56, 0x08, 0x84, 0x27, 0x9e, 0x4f, 0x73, 0xf8, 0x87, 0xd4, 0xf3, 0x04, 0x36, 0x72, 0xe4,
+ 0xbf, 0x7f, 0xc6, 0xf8, 0x97, 0x02, 0xdb, 0x14, 0xd1, 0xe5, 0x66, 0xc1, 0x89, 0xe7, 0xd3, 0x7c,
+ 0xfc, 0x43, 0x5a, 0xa3, 0xbd, 0x4f, 0xdf, 0x96, 0x03, 0x31, 0xd5, 0x38, 0xc4, 0x18, 0xff, 0x53,
+ 0xe0, 0x51, 0x91, 0xce, 0xc2, 0x03, 0xcf, 0xd3, 0x41, 0xf8, 0xb3, 0x50, 0xe3, 0xab, 0x17, 0x76,
+ 0x22, 0x87, 0x32, 0x6a, 0xb8, 0x89, 0x8e, 0xe1, 0x47, 0x89, 0x99, 0x98, 0x8b, 0x4b, 0xd7, 0xb8,
+ 0x98, 0x56, 0x85, 0xd4, 0xc8, 0xfe, 0x60, 0x49, 0x70, 0xc0, 0x2c, 0x6c, 0x9a, 0x1a, 0xa5, 0x1c,
+ 0x51, 0xc2, 0x79, 0x45, 0x55, 0x5a, 0xa5, 0xf3, 0x8a, 0x5a, 0x6e, 0x55, 0x8c, 0xff, 0x44, 0x41,
+ 0x1a, 0x1c, 0x2d, 0x9f, 0xe1, 0x20, 0xa0, 0x01, 0xb6, 0xa2, 0x5b, 0x25, 0xbd, 0x5b, 0x4e, 0x03,
+ 0x78, 0xce, 0x59, 0xe4, 0x35, 0x3a, 0xf7, 0xa0, 0xfa, 0x7a, 0x81, 0xfd, 0xa5, 0xa8, 0x74, 0xf9,
+ 0x80, 0x96, 0x08, 0x59, 0x13, 0x6e, 0x82, 0x8d, 0x0e, 0xec, 0x9c, 0x38, 0x2e, 0xc1, 0xfe, 0xcb,
+ 0x89, 0x15, 0x7c, 0xe3, 0x90, 0xc9, 0x4b, 0x67, 0x3c, 0xb3, 0xc8, 0xc2, 0xc7, 0xb7, 0x6d, 0x76,
+ 0x82, 0x89, 0x15, 0xb0, 0xaa, 0xa6, 0x69, 0xb2, 0x7f, 0xe3, 0x17, 0xb0, 0x5b, 0x2c, 0x4a, 0xa2,
+ 0x00, 0x5b, 0xa7, 0xc4, 0xd6, 0xcd, 0x61, 0xfb, 0xf8, 0x92, 0xf8, 0xd6, 0x50, 0x28, 0x1f, 0x2d,
+ 0xbb, 0x8d, 0x82, 0x9b, 0x20, 0x7a, 0x06, 0xf9, 0x52, 0xa3, 0x72, 0xc2, 0x99, 0x6d, 0xf4, 0xe1,
+ 0x51, 0x91, 0x44, 0xa1, 0xe7, 0x16, 0x68, 0x41, 0x48, 0x14, 0x90, 0x25, 0x09, 0x2c, 0xe1, 0x3a,
+ 0xe3, 0x19, 0xb6, 0xfb, 0x04, 0x5f, 0x12, 0x71, 0x29, 0x80, 0x93, 0x7a, 0xf8, 0x92, 0x18, 0x1e,
+ 0xe8, 0xa7, 0x38, 0xbd, 0xf9, 0xad, 0x1c, 0x2e, 0xbb, 0x22, 0xc7, 0x0e, 0x44, 0x31, 0xa9, 0x85,
+ 0x06, 0x05, 0xc6, 0x12, 0x36, 0x73, 0x05, 0x0a, 0x73, 0x12, 0xde, 0x50, 0x92, 0xde, 0x48, 0xda,
+ 0x5a, 0xba, 0xc6, 0xd6, 0x72, 0xc6, 0xd6, 0x29, 0xb4, 0x23, 0xd1, 0xe2, 0xaa, 0xae, 0xd2, 0x52,
+ 0x13, 0x36, 0x72, 0xc4, 0xbd, 0x8b, 0x9d, 0x6d, 0xa8, 0x4f, 0xf9, 0x02, 0x61, 0x65, 0x38, 0x3c,
+ 0xfc, 0xf7, 0x9d, 0x10, 0x99, 0x5e, 0x62, 0xff, 0xc2, 0x19, 0x62, 0xf4, 0x3b, 0x68, 0xa5, 0x9f,
+ 0xeb, 0xd0, 0x4e, 0x32, 0x9b, 0x67, 0xde, 0x14, 0xf5, 0xdd, 0x62, 0x06, 0xae, 0x9f, 0x51, 0x7b,
+ 0xfb, 0xb7, 0xbd, 0x92, 0x5a, 0x42, 0xe7, 0xf1, 0xb6, 0xbb, 0x9d, 0xf3, 0x6a, 0xc6, 0x37, 0xdc,
+ 0x28, 0x7c, 0x4f, 0x0b, 0x77, 0x3a, 0x50, 0xd0, 0xb7, 0xb0, 0x96, 0x7c, 0x52, 0x42, 0xdb, 0x49,
+ 0x3d, 0x52, 0x6f, 0x5b, 0xfa, 0xa3, 0xa2, 0xe9, 0xcc, 0xd6, 0xbf, 0x85, 0x66, 0xfc, 0x55, 0x05,
+ 0x6d, 0xca, 0x95, 0x99, 0xb7, 0x27, 0x7d, 0x2b, 0x7f, 0x32, 0x65, 0xb9, 0x0b, 0xf7, 0x73, 0x9f,
+ 0x34, 0xd0, 0xa7, 0x89, 0xe5, 0x05, 0x0f, 0x33, 0xfa, 0xe3, 0x6b, 0xb8, 0x52, 0xd2, 0xbe, 0x85,
+ 0xb5, 0x64, 0x1b, 0x2d, 0x7d, 0x93, 0xdb, 0xf9, 0x4b, 0xdf, 0xe4, 0x77, 0xdf, 0x31, 0xdf, 0x9c,
+ 0x83, 0x16, 0xb5, 0xbd, 0xf2, 0x08, 0xd3, 0xdd, 0xb6, 0x3c, 0xc2, 0x4c, 0x8f, 0x1c, 0xdb, 0xeb,
+ 0x37, 0x00, 0xb2, 0x08, 0x46, 0x1b, 0xf1, 0x5e, 0x29, 0xd1, 0x2b, 0xeb, 0x7a, 0xde, 0x54, 0xca,
+ 0xe6, 0xe7, 0xd0, 0x88, 0x3d, 0xad, 0x23, 0x3d, 0x79, 0xda, 0xf1, 0x57, 0x7d, 0x7d, 0x33, 0x77,
+ 0x2e, 0xeb, 0xc3, 0x64, 0x9f, 0x25, 0x7d, 0x98, 0xdb, 0xcc, 0x49, 0x1f, 0xe6, 0xb7, 0x67, 0x31,
+ 0xbb, 0x5f, 0x40, 0x23, 0x56, 0xfc, 0xa3, 0x1c, 0xeb, 0xb2, 0xaa, 0xe6, 0x74, 0x0b, 0xb1, 0x1d,
+ 0xbf, 0x83, 0x3b, 0xa9, 0x5a, 0x1b, 0x3d, 0x2a, 0x2c, 0xc2, 0xf9, 0xce, 0x3b, 0xd7, 0x14, 0xe9,
+ 0x91, 0x23, 0x4e, 0x41, 0x0d, 0xab, 0x5a, 0xf4, 0x30, 0x02, 0xb1, 0x64, 0x79, 0xad, 0xb7, 0xb3,
+ 0x13, 0x19, 0x25, 0x7f, 0x0f, 0xeb, 0x99, 0xb2, 0x13, 0x45, 0xe0, 0x51, 0x54, 0x11, 0xeb, 0x1f,
+ 0x5f, 0xc1, 0x91, 0x52, 0xf5, 0x35, 0x3c, 0xc8, 0x2f, 0xd1, 0xd0, 0xe3, 0xeb, 0x4a, 0x38, 0x2e,
+ 0xeb, 0xb3, 0x77, 0xab, 0xf4, 0x62, 0x46, 0xf5, 0x43, 0xc4, 0x94, 0x15, 0x4b, 0x1a, 0x31, 0x33,
+ 0xe5, 0x58, 0x1a, 0x31, 0xb3, 0xc5, 0x4e, 0x52, 0x40, 0xfa, 0xd5, 0x44, 0x0a, 0x28, 0x78, 0xb0,
+ 0x91, 0x02, 0x8a, 0x1e, 0x5c, 0x62, 0x02, 0x96, 0xd0, 0x2e, 0xaa, 0x5f, 0xd0, 0x8f, 0xe5, 0xf5,
+ 0xbb, 0xb2, 0x98, 0xd2, 0xf7, 0xae, 0x67, 0x4c, 0x0a, 0xde, 0x53, 0x0e, 0x14, 0x7a, 0x5e, 0xf9,
+ 0x05, 0x89, 0x3c, 0xaf, 0x2b, 0x4b, 0x24, 0x79, 0x5e, 0x57, 0xd7, 0x35, 0x31, 0x6b, 0x27, 0x70,
+ 0x37, 0xa7, 0x62, 0x40, 0x46, 0x0c, 0x00, 0x0b, 0xea, 0x17, 0xfd, 0x93, 0x2b, 0x79, 0x32, 0x92,
+ 0x06, 0xb0, 0x9e, 0xc9, 0xd8, 0xf2, 0xba, 0x17, 0xd5, 0x0e, 0xf2, 0xba, 0x17, 0xa6, 0x7b, 0x29,
+ 0xe3, 0xe8, 0xe0, 0x3b, 0xca, 0xed, 0x5a, 0x83, 0xce, 0xd0, 0x9b, 0xee, 0xf3, 0xdf, 0x2f, 0x3d,
+ 0x7f, 0xbc, 0xcf, 0xf7, 0xf8, 0x92, 0xbd, 0x49, 0xec, 0x8f, 0x3d, 0x31, 0x9e, 0x0f, 0x06, 0x35,
+ 0x46, 0xfa, 0xe9, 0xf7, 0x01, 0x00, 0x00, 0xff, 0xff, 0x56, 0x85, 0xef, 0x3a, 0x35, 0x1d, 0x00,
+ 0x00,
}
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/conflicts.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/conflicts.pb.go
index 5c90c331b..cc03d311d 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/conflicts.pb.go
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/conflicts.pb.go
@@ -36,7 +36,7 @@ func (m *ListConflictFilesRequest) Reset() { *m = ListConflictFilesReque
func (m *ListConflictFilesRequest) String() string { return proto.CompactTextString(m) }
func (*ListConflictFilesRequest) ProtoMessage() {}
func (*ListConflictFilesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_conflicts_cfde09b9517b3e8b, []int{0}
+ return fileDescriptor_conflicts_152755a1cf53b399, []int{0}
}
func (m *ListConflictFilesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListConflictFilesRequest.Unmarshal(m, b)
@@ -92,7 +92,7 @@ func (m *ConflictFileHeader) Reset() { *m = ConflictFileHeader{} }
func (m *ConflictFileHeader) String() string { return proto.CompactTextString(m) }
func (*ConflictFileHeader) ProtoMessage() {}
func (*ConflictFileHeader) Descriptor() ([]byte, []int) {
- return fileDescriptor_conflicts_cfde09b9517b3e8b, []int{1}
+ return fileDescriptor_conflicts_152755a1cf53b399, []int{1}
}
func (m *ConflictFileHeader) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ConflictFileHeader.Unmarshal(m, b)
@@ -161,7 +161,7 @@ func (m *ConflictFile) Reset() { *m = ConflictFile{} }
func (m *ConflictFile) String() string { return proto.CompactTextString(m) }
func (*ConflictFile) ProtoMessage() {}
func (*ConflictFile) Descriptor() ([]byte, []int) {
- return fileDescriptor_conflicts_cfde09b9517b3e8b, []int{2}
+ return fileDescriptor_conflicts_152755a1cf53b399, []int{2}
}
func (m *ConflictFile) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ConflictFile.Unmarshal(m, b)
@@ -299,7 +299,7 @@ func (m *ListConflictFilesResponse) Reset() { *m = ListConflictFilesResp
func (m *ListConflictFilesResponse) String() string { return proto.CompactTextString(m) }
func (*ListConflictFilesResponse) ProtoMessage() {}
func (*ListConflictFilesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_conflicts_cfde09b9517b3e8b, []int{3}
+ return fileDescriptor_conflicts_152755a1cf53b399, []int{3}
}
func (m *ListConflictFilesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListConflictFilesResponse.Unmarshal(m, b)
@@ -344,7 +344,7 @@ func (m *ResolveConflictsRequestHeader) Reset() { *m = ResolveConflictsR
func (m *ResolveConflictsRequestHeader) String() string { return proto.CompactTextString(m) }
func (*ResolveConflictsRequestHeader) ProtoMessage() {}
func (*ResolveConflictsRequestHeader) Descriptor() ([]byte, []int) {
- return fileDescriptor_conflicts_cfde09b9517b3e8b, []int{4}
+ return fileDescriptor_conflicts_152755a1cf53b399, []int{4}
}
func (m *ResolveConflictsRequestHeader) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ResolveConflictsRequestHeader.Unmarshal(m, b)
@@ -434,7 +434,7 @@ func (m *ResolveConflictsRequest) Reset() { *m = ResolveConflictsRequest
func (m *ResolveConflictsRequest) String() string { return proto.CompactTextString(m) }
func (*ResolveConflictsRequest) ProtoMessage() {}
func (*ResolveConflictsRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_conflicts_cfde09b9517b3e8b, []int{5}
+ return fileDescriptor_conflicts_152755a1cf53b399, []int{5}
}
func (m *ResolveConflictsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ResolveConflictsRequest.Unmarshal(m, b)
@@ -572,7 +572,7 @@ func (m *ResolveConflictsResponse) Reset() { *m = ResolveConflictsRespon
func (m *ResolveConflictsResponse) String() string { return proto.CompactTextString(m) }
func (*ResolveConflictsResponse) ProtoMessage() {}
func (*ResolveConflictsResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_conflicts_cfde09b9517b3e8b, []int{6}
+ return fileDescriptor_conflicts_152755a1cf53b399, []int{6}
}
func (m *ResolveConflictsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ResolveConflictsResponse.Unmarshal(m, b)
@@ -775,47 +775,47 @@ var _ConflictsService_serviceDesc = grpc.ServiceDesc{
Metadata: "conflicts.proto",
}
-func init() { proto.RegisterFile("conflicts.proto", fileDescriptor_conflicts_cfde09b9517b3e8b) }
-
-var fileDescriptor_conflicts_cfde09b9517b3e8b = []byte{
- // 622 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x94, 0xc1, 0x4e, 0xdb, 0x4e,
- 0x10, 0xc6, 0x71, 0x80, 0x40, 0x06, 0x03, 0x61, 0xf5, 0xff, 0x0b, 0x13, 0x09, 0x61, 0x4c, 0x91,
- 0xdc, 0x4a, 0x04, 0x94, 0xf6, 0xd4, 0x0b, 0x52, 0x10, 0x2d, 0xaa, 0x8a, 0x5a, 0xb9, 0xea, 0xa1,
- 0x55, 0x25, 0xcb, 0xb1, 0x87, 0xc4, 0x95, 0xe3, 0x71, 0x77, 0xd7, 0x48, 0x79, 0x92, 0xbe, 0x41,
- 0xd5, 0x87, 0xe8, 0x1b, 0xf4, 0x6d, 0x7a, 0xe9, 0xb5, 0xca, 0xae, 0x6d, 0x02, 0x49, 0x68, 0xd5,
- 0xde, 0x92, 0x6f, 0x7e, 0x99, 0xfd, 0x66, 0xe7, 0xcb, 0xc2, 0x66, 0x48, 0xe9, 0x55, 0x12, 0x87,
- 0x52, 0xb4, 0x33, 0x4e, 0x92, 0x58, 0xbd, 0x1f, 0xcb, 0x20, 0x19, 0xb5, 0x4c, 0x31, 0x08, 0x38,
- 0x46, 0x5a, 0x75, 0xbe, 0x18, 0x60, 0xbd, 0x8c, 0x85, 0x3c, 0x2b, 0xe8, 0x67, 0x71, 0x82, 0xc2,
- 0xc3, 0x4f, 0x39, 0x0a, 0xc9, 0x3a, 0x00, 0x1c, 0x33, 0x12, 0xb1, 0x24, 0x3e, 0xb2, 0x0c, 0xdb,
- 0x70, 0xd7, 0x3a, 0xac, 0xad, 0xfb, 0xb4, 0xbd, 0xaa, 0xe2, 0x4d, 0x50, 0xec, 0x01, 0x6c, 0x50,
- 0xce, 0xfd, 0x90, 0x86, 0xc3, 0x58, 0xfa, 0x14, 0x47, 0x56, 0xcd, 0x36, 0xdc, 0x86, 0x67, 0x52,
- 0xce, 0xcf, 0x94, 0xf8, 0x2a, 0x8e, 0x98, 0x0b, 0x4d, 0x39, 0xc0, 0xf8, 0x16, 0xb7, 0xa8, 0xb8,
- 0x0d, 0xa5, 0x57, 0xe4, 0xd3, 0xfa, 0x8f, 0xcf, 0x6e, 0x6d, 0xb5, 0xe6, 0x7c, 0x33, 0x80, 0x4d,
- 0x9a, 0xbc, 0xc0, 0x20, 0x42, 0xfe, 0x57, 0x16, 0x77, 0x01, 0xa6, 0xec, 0x35, 0xc2, 0xca, 0xdb,
- 0x2e, 0x80, 0xf6, 0x96, 0x05, 0x72, 0xa0, 0x5c, 0x99, 0x5e, 0x43, 0x29, 0xaf, 0x03, 0x39, 0x60,
- 0x3b, 0xb0, 0x3a, 0x1e, 0x50, 0x15, 0x97, 0x54, 0x71, 0x85, 0xf2, 0x5b, 0xa5, 0x21, 0x45, 0x68,
- 0x2d, 0xdb, 0x86, 0xbb, 0xac, 0x4a, 0x97, 0x14, 0xa1, 0x33, 0x02, 0x73, 0xd2, 0x3d, 0x7b, 0x02,
- 0xf5, 0x81, 0x9a, 0xa0, 0xf0, 0xdc, 0x2a, 0x3d, 0x4f, 0xcf, 0x78, 0xb1, 0xe0, 0x15, 0x2c, 0x6b,
- 0xc1, 0x4a, 0x48, 0xa9, 0xc4, 0x54, 0x2a, 0xdb, 0xe6, 0xc5, 0x82, 0x57, 0x0a, 0xdd, 0x6d, 0xf8,
- 0xbf, 0x5c, 0xb9, 0x7f, 0x15, 0x27, 0xe8, 0x67, 0xc1, 0x28, 0xa1, 0x20, 0x72, 0x9e, 0xc3, 0xce,
- 0x8c, 0x0d, 0x8b, 0x8c, 0x52, 0x81, 0xec, 0x11, 0x2c, 0x8f, 0x61, 0x61, 0x19, 0xf6, 0xa2, 0xbb,
- 0xd6, 0xf9, 0x6f, 0x96, 0x0d, 0x4f, 0x23, 0xce, 0xcf, 0x1a, 0xec, 0x7a, 0x28, 0x28, 0xb9, 0xc6,
- 0xb2, 0x5c, 0x46, 0xe5, 0x1f, 0xb6, 0xf1, 0x67, 0x81, 0x39, 0x85, 0x2d, 0x19, 0xf0, 0x3e, 0x4a,
- 0x7f, 0xe2, 0x80, 0xc5, 0xb9, 0x07, 0x34, 0x35, 0x7c, 0xa3, 0xcc, 0x4c, 0xdc, 0xd2, 0xac, 0xc4,
- 0xb1, 0x03, 0x58, 0x17, 0x94, 0xf3, 0x10, 0xfd, 0x1e, 0x0f, 0xd2, 0x70, 0xa0, 0x56, 0x69, 0x7a,
- 0xa6, 0x16, 0xbb, 0x4a, 0x1b, 0x43, 0x85, 0x9f, 0x02, 0xaa, 0x6b, 0x48, 0x8b, 0x05, 0x74, 0x08,
- 0x1b, 0xc5, 0x69, 0x43, 0x14, 0x22, 0xe8, 0xa3, 0xb5, 0xa2, 0xa8, 0x75, 0xad, 0x5e, 0x6a, 0x91,
- 0xd9, 0xb0, 0x94, 0x0b, 0xe4, 0xd6, 0xaa, 0x1a, 0xc7, 0x2c, 0xc7, 0x79, 0x2b, 0x90, 0x7b, 0xaa,
- 0xe2, 0x7c, 0x35, 0x60, 0x7b, 0xce, 0xcd, 0xb3, 0xd3, 0x3b, 0x49, 0x3a, 0xbc, 0xb9, 0x8e, 0x7b,
- 0x56, 0x35, 0x11, 0xaa, 0x3d, 0x00, 0xb5, 0x5f, 0xff, 0xa3, 0xa0, 0xb4, 0xca, 0x55, 0x43, 0x69,
- 0x2f, 0x04, 0xa5, 0xc5, 0x5f, 0xd0, 0xe8, 0x1e, 0xc0, 0x3e, 0xd7, 0x3d, 0xfd, 0xea, 0x71, 0xf1,
- 0xb9, 0xee, 0x5a, 0xa5, 0xed, 0x1c, 0xac, 0xe9, 0x83, 0x8b, 0xb0, 0x3d, 0x84, 0xa6, 0x6a, 0x90,
- 0xcb, 0x98, 0x52, 0x1f, 0x39, 0x27, 0x6d, 0xba, 0xe1, 0x6d, 0xde, 0xe8, 0xe7, 0x63, 0xb9, 0xf3,
- 0xdd, 0x80, 0x66, 0xd5, 0xe0, 0x0d, 0xf2, 0xeb, 0x38, 0x44, 0xf6, 0x01, 0xb6, 0xa6, 0x92, 0xcc,
- 0xec, 0x72, 0xde, 0x79, 0xcf, 0x58, 0x6b, 0xff, 0x1e, 0x42, 0x3b, 0x73, 0x16, 0x4e, 0x0c, 0xf6,
- 0x0e, 0x9a, 0x77, 0x9d, 0xb3, 0xbd, 0xdf, 0x5c, 0x66, 0xcb, 0x9e, 0x0f, 0x94, 0xad, 0x5d, 0xa3,
- 0x7b, 0xf2, 0x7e, 0x8c, 0x25, 0x41, 0xaf, 0x1d, 0xd2, 0xf0, 0x58, 0x7f, 0x3c, 0x22, 0xde, 0x3f,
- 0xd6, 0x3f, 0x3e, 0x52, 0x6f, 0xf1, 0x71, 0x9f, 0x8a, 0xef, 0x59, 0xaf, 0x57, 0x57, 0xd2, 0xe3,
- 0x5f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xa1, 0x0c, 0xe9, 0xcc, 0xc7, 0x05, 0x00, 0x00,
+func init() { proto.RegisterFile("conflicts.proto", fileDescriptor_conflicts_152755a1cf53b399) }
+
+var fileDescriptor_conflicts_152755a1cf53b399 = []byte{
+ // 612 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x94, 0x51, 0x4f, 0xd3, 0x50,
+ 0x14, 0xc7, 0xe9, 0x80, 0xc1, 0x0e, 0x05, 0xc6, 0x8d, 0x86, 0xb2, 0x84, 0x50, 0x8a, 0x24, 0xd5,
+ 0x84, 0x41, 0xa6, 0xef, 0x24, 0x23, 0x28, 0x31, 0x12, 0x4d, 0x8d, 0x2f, 0xbe, 0x34, 0x5d, 0x7b,
+ 0xd8, 0x6a, 0xba, 0x9e, 0x7a, 0xef, 0x2d, 0xc9, 0x3e, 0x89, 0x6f, 0xc6, 0x0f, 0xe2, 0xf7, 0xf0,
+ 0xa3, 0x98, 0xf8, 0x64, 0x76, 0x6f, 0x5b, 0x36, 0xb6, 0xa1, 0xd1, 0xb7, 0xed, 0x7f, 0x7e, 0x39,
+ 0xe7, 0x7f, 0x7a, 0xfe, 0xb9, 0xb0, 0x1d, 0x52, 0x7a, 0x93, 0xc4, 0xa1, 0x14, 0xed, 0x8c, 0x93,
+ 0x24, 0x56, 0xef, 0xc7, 0x32, 0x48, 0x46, 0x2d, 0x53, 0x0c, 0x02, 0x8e, 0x91, 0x56, 0x9d, 0xaf,
+ 0x06, 0x58, 0x6f, 0x62, 0x21, 0x2f, 0x0a, 0xfa, 0x65, 0x9c, 0xa0, 0xf0, 0xf0, 0x73, 0x8e, 0x42,
+ 0xb2, 0x0e, 0x00, 0xc7, 0x8c, 0x44, 0x2c, 0x89, 0x8f, 0x2c, 0xc3, 0x36, 0xdc, 0x8d, 0x0e, 0x6b,
+ 0xeb, 0x3e, 0x6d, 0xaf, 0xaa, 0x78, 0x13, 0x14, 0x7b, 0x02, 0x5b, 0x94, 0x73, 0x3f, 0xa4, 0xe1,
+ 0x30, 0x96, 0x3e, 0xc5, 0x91, 0x55, 0xb3, 0x0d, 0xb7, 0xe1, 0x99, 0x94, 0xf3, 0x0b, 0x25, 0xbe,
+ 0x8d, 0x23, 0xe6, 0x42, 0x53, 0x0e, 0x30, 0x9e, 0xe2, 0x96, 0x15, 0xb7, 0xa5, 0xf4, 0x8a, 0x74,
+ 0xbe, 0x1b, 0xc0, 0x26, 0xcd, 0x5d, 0x61, 0x10, 0x21, 0xff, 0x27, 0x6b, 0xfb, 0x00, 0x33, 0xb6,
+ 0x1a, 0x61, 0xe5, 0x69, 0x1f, 0x40, 0x7b, 0xca, 0x02, 0x39, 0x50, 0x6e, 0x4c, 0xaf, 0xa1, 0x94,
+ 0x77, 0x81, 0x1c, 0xb0, 0x3d, 0x58, 0x1f, 0x2f, 0xa6, 0x8a, 0x2b, 0xaa, 0xb8, 0x46, 0xf9, 0x54,
+ 0x69, 0x48, 0x11, 0x5a, 0xab, 0xb6, 0xe1, 0xae, 0xaa, 0xd2, 0x35, 0x45, 0xe8, 0x8c, 0xc0, 0x9c,
+ 0x74, 0xcf, 0x5e, 0x40, 0x7d, 0xa0, 0x36, 0x28, 0x3c, 0xb7, 0x4a, 0xcf, 0xb3, 0x3b, 0x5e, 0x2d,
+ 0x79, 0x05, 0xcb, 0x5a, 0xb0, 0x16, 0x52, 0x2a, 0x31, 0x95, 0xca, 0xb6, 0x79, 0xb5, 0xe4, 0x95,
+ 0x42, 0x77, 0x17, 0x1e, 0x97, 0xa7, 0xf6, 0x6f, 0xe2, 0x04, 0xfd, 0x2c, 0x18, 0x25, 0x14, 0x44,
+ 0xce, 0x2b, 0xd8, 0x9b, 0x73, 0x59, 0x91, 0x51, 0x2a, 0x90, 0x3d, 0x83, 0xd5, 0x31, 0x2c, 0x2c,
+ 0xc3, 0x5e, 0x76, 0x37, 0x3a, 0x8f, 0xe6, 0xd9, 0xf0, 0x34, 0xe2, 0xfc, 0xac, 0xc1, 0xbe, 0x87,
+ 0x82, 0x92, 0x5b, 0x2c, 0xcb, 0x65, 0x44, 0xfe, 0xe3, 0x1a, 0x7f, 0x17, 0x94, 0x73, 0xd8, 0x91,
+ 0x01, 0xef, 0xa3, 0xf4, 0x27, 0x06, 0x2c, 0x2f, 0x1c, 0xd0, 0xd4, 0xf0, 0x9d, 0x32, 0x37, 0x69,
+ 0x2b, 0xf3, 0x92, 0xc6, 0x8e, 0x60, 0x53, 0x50, 0xce, 0x43, 0xf4, 0x7b, 0x3c, 0x48, 0xc3, 0x81,
+ 0x3a, 0xa5, 0xe9, 0x99, 0x5a, 0xec, 0x2a, 0x6d, 0x0c, 0x15, 0x7e, 0x0a, 0xa8, 0xae, 0x21, 0x2d,
+ 0x16, 0xd0, 0x31, 0x6c, 0x15, 0xd3, 0x86, 0x28, 0x44, 0xd0, 0x47, 0x6b, 0x4d, 0x51, 0x9b, 0x5a,
+ 0xbd, 0xd6, 0x22, 0xb3, 0x61, 0x25, 0x17, 0xc8, 0xad, 0x75, 0xb5, 0x8e, 0x59, 0xae, 0xf3, 0x41,
+ 0x20, 0xf7, 0x54, 0xc5, 0xf9, 0x66, 0xc0, 0xee, 0x82, 0x2f, 0xcf, 0xce, 0xef, 0x25, 0xe9, 0xf8,
+ 0xee, 0x73, 0x3c, 0x70, 0xaa, 0x89, 0x50, 0x1d, 0x00, 0xa8, 0xfb, 0xfa, 0x9f, 0x04, 0xa5, 0x55,
+ 0xae, 0x1a, 0x4a, 0x7b, 0x2d, 0x28, 0xed, 0x1e, 0xc1, 0x21, 0xd7, 0xbd, 0xfc, 0xea, 0x31, 0xf1,
+ 0xb9, 0xee, 0x56, 0xa5, 0xec, 0x12, 0xac, 0xd9, 0x81, 0x45, 0xc8, 0x9e, 0x42, 0x53, 0x35, 0xc8,
+ 0x65, 0x4c, 0xa9, 0x8f, 0x9c, 0x93, 0x36, 0xdb, 0xf0, 0xb6, 0xef, 0xf4, 0xcb, 0xb1, 0xdc, 0xf9,
+ 0x61, 0x40, 0xb3, 0x6a, 0xf0, 0x1e, 0xf9, 0x6d, 0x1c, 0x22, 0xeb, 0xc1, 0xce, 0x4c, 0x82, 0x99,
+ 0x5d, 0xee, 0xb9, 0xe8, 0xd9, 0x6a, 0x1d, 0x3e, 0x40, 0x68, 0x67, 0x4e, 0xfd, 0xd7, 0x17, 0xb7,
+ 0xb6, 0x5e, 0x3b, 0x33, 0x98, 0x0f, 0xcd, 0xfb, 0xfe, 0xd9, 0xc1, 0x1f, 0x3e, 0x65, 0xcb, 0x5e,
+ 0x0c, 0x4c, 0x0d, 0x30, 0x5c, 0xa3, 0x7b, 0xf6, 0x71, 0x0c, 0x27, 0x41, 0xaf, 0x1d, 0xd2, 0xf0,
+ 0x54, 0xff, 0x3c, 0x21, 0xde, 0x3f, 0xd5, 0x2d, 0x4e, 0xd4, 0x3b, 0x7c, 0xda, 0xa7, 0xe2, 0x7f,
+ 0xd6, 0xeb, 0xd5, 0x95, 0xf4, 0xfc, 0x77, 0x00, 0x00, 0x00, 0xff, 0xff, 0x76, 0x80, 0x69, 0xe9,
+ 0xc3, 0x05, 0x00, 0x00,
}
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/diff.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/diff.pb.go
index a1f8f2838..a7b25fb62 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/diff.pb.go
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/diff.pb.go
@@ -52,7 +52,7 @@ func (m *CommitDiffRequest) Reset() { *m = CommitDiffRequest{} }
func (m *CommitDiffRequest) String() string { return proto.CompactTextString(m) }
func (*CommitDiffRequest) ProtoMessage() {}
func (*CommitDiffRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_diff_696f647dc4d0db76, []int{0}
+ return fileDescriptor_diff_30d5eeb6dfe82880, []int{0}
}
func (m *CommitDiffRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommitDiffRequest.Unmarshal(m, b)
@@ -200,7 +200,7 @@ func (m *CommitDiffResponse) Reset() { *m = CommitDiffResponse{} }
func (m *CommitDiffResponse) String() string { return proto.CompactTextString(m) }
func (*CommitDiffResponse) ProtoMessage() {}
func (*CommitDiffResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_diff_696f647dc4d0db76, []int{1}
+ return fileDescriptor_diff_30d5eeb6dfe82880, []int{1}
}
func (m *CommitDiffResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommitDiffResponse.Unmarshal(m, b)
@@ -318,7 +318,7 @@ func (m *CommitDeltaRequest) Reset() { *m = CommitDeltaRequest{} }
func (m *CommitDeltaRequest) String() string { return proto.CompactTextString(m) }
func (*CommitDeltaRequest) ProtoMessage() {}
func (*CommitDeltaRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_diff_696f647dc4d0db76, []int{2}
+ return fileDescriptor_diff_30d5eeb6dfe82880, []int{2}
}
func (m *CommitDeltaRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommitDeltaRequest.Unmarshal(m, b)
@@ -383,7 +383,7 @@ func (m *CommitDelta) Reset() { *m = CommitDelta{} }
func (m *CommitDelta) String() string { return proto.CompactTextString(m) }
func (*CommitDelta) ProtoMessage() {}
func (*CommitDelta) Descriptor() ([]byte, []int) {
- return fileDescriptor_diff_696f647dc4d0db76, []int{3}
+ return fileDescriptor_diff_30d5eeb6dfe82880, []int{3}
}
func (m *CommitDelta) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommitDelta.Unmarshal(m, b)
@@ -456,7 +456,7 @@ func (m *CommitDeltaResponse) Reset() { *m = CommitDeltaResponse{} }
func (m *CommitDeltaResponse) String() string { return proto.CompactTextString(m) }
func (*CommitDeltaResponse) ProtoMessage() {}
func (*CommitDeltaResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_diff_696f647dc4d0db76, []int{4}
+ return fileDescriptor_diff_30d5eeb6dfe82880, []int{4}
}
func (m *CommitDeltaResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommitDeltaResponse.Unmarshal(m, b)
@@ -495,7 +495,7 @@ func (m *CommitPatchRequest) Reset() { *m = CommitPatchRequest{} }
func (m *CommitPatchRequest) String() string { return proto.CompactTextString(m) }
func (*CommitPatchRequest) ProtoMessage() {}
func (*CommitPatchRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_diff_696f647dc4d0db76, []int{5}
+ return fileDescriptor_diff_30d5eeb6dfe82880, []int{5}
}
func (m *CommitPatchRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommitPatchRequest.Unmarshal(m, b)
@@ -540,7 +540,7 @@ func (m *CommitPatchResponse) Reset() { *m = CommitPatchResponse{} }
func (m *CommitPatchResponse) String() string { return proto.CompactTextString(m) }
func (*CommitPatchResponse) ProtoMessage() {}
func (*CommitPatchResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_diff_696f647dc4d0db76, []int{6}
+ return fileDescriptor_diff_30d5eeb6dfe82880, []int{6}
}
func (m *CommitPatchResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommitPatchResponse.Unmarshal(m, b)
@@ -580,7 +580,7 @@ func (m *RawDiffRequest) Reset() { *m = RawDiffRequest{} }
func (m *RawDiffRequest) String() string { return proto.CompactTextString(m) }
func (*RawDiffRequest) ProtoMessage() {}
func (*RawDiffRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_diff_696f647dc4d0db76, []int{7}
+ return fileDescriptor_diff_30d5eeb6dfe82880, []int{7}
}
func (m *RawDiffRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RawDiffRequest.Unmarshal(m, b)
@@ -632,7 +632,7 @@ func (m *RawDiffResponse) Reset() { *m = RawDiffResponse{} }
func (m *RawDiffResponse) String() string { return proto.CompactTextString(m) }
func (*RawDiffResponse) ProtoMessage() {}
func (*RawDiffResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_diff_696f647dc4d0db76, []int{8}
+ return fileDescriptor_diff_30d5eeb6dfe82880, []int{8}
}
func (m *RawDiffResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RawDiffResponse.Unmarshal(m, b)
@@ -672,7 +672,7 @@ func (m *RawPatchRequest) Reset() { *m = RawPatchRequest{} }
func (m *RawPatchRequest) String() string { return proto.CompactTextString(m) }
func (*RawPatchRequest) ProtoMessage() {}
func (*RawPatchRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_diff_696f647dc4d0db76, []int{9}
+ return fileDescriptor_diff_30d5eeb6dfe82880, []int{9}
}
func (m *RawPatchRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RawPatchRequest.Unmarshal(m, b)
@@ -724,7 +724,7 @@ func (m *RawPatchResponse) Reset() { *m = RawPatchResponse{} }
func (m *RawPatchResponse) String() string { return proto.CompactTextString(m) }
func (*RawPatchResponse) ProtoMessage() {}
func (*RawPatchResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_diff_696f647dc4d0db76, []int{10}
+ return fileDescriptor_diff_30d5eeb6dfe82880, []int{10}
}
func (m *RawPatchResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RawPatchResponse.Unmarshal(m, b)
@@ -764,7 +764,7 @@ func (m *DiffStatsRequest) Reset() { *m = DiffStatsRequest{} }
func (m *DiffStatsRequest) String() string { return proto.CompactTextString(m) }
func (*DiffStatsRequest) ProtoMessage() {}
func (*DiffStatsRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_diff_696f647dc4d0db76, []int{11}
+ return fileDescriptor_diff_30d5eeb6dfe82880, []int{11}
}
func (m *DiffStatsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DiffStatsRequest.Unmarshal(m, b)
@@ -818,7 +818,7 @@ func (m *DiffStats) Reset() { *m = DiffStats{} }
func (m *DiffStats) String() string { return proto.CompactTextString(m) }
func (*DiffStats) ProtoMessage() {}
func (*DiffStats) Descriptor() ([]byte, []int) {
- return fileDescriptor_diff_696f647dc4d0db76, []int{12}
+ return fileDescriptor_diff_30d5eeb6dfe82880, []int{12}
}
func (m *DiffStats) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DiffStats.Unmarshal(m, b)
@@ -870,7 +870,7 @@ func (m *DiffStatsResponse) Reset() { *m = DiffStatsResponse{} }
func (m *DiffStatsResponse) String() string { return proto.CompactTextString(m) }
func (*DiffStatsResponse) ProtoMessage() {}
func (*DiffStatsResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_diff_696f647dc4d0db76, []int{13}
+ return fileDescriptor_diff_30d5eeb6dfe82880, []int{13}
}
func (m *DiffStatsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DiffStatsResponse.Unmarshal(m, b)
@@ -1317,65 +1317,65 @@ var _DiffService_serviceDesc = grpc.ServiceDesc{
Metadata: "diff.proto",
}
-func init() { proto.RegisterFile("diff.proto", fileDescriptor_diff_696f647dc4d0db76) }
-
-var fileDescriptor_diff_696f647dc4d0db76 = []byte{
- // 909 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x56, 0xcf, 0x6f, 0xe3, 0x44,
- 0x14, 0xc6, 0x4d, 0xe2, 0x3a, 0x2f, 0x6e, 0xda, 0x4e, 0x51, 0xd7, 0xcd, 0x72, 0x88, 0xa2, 0xfd,
- 0x11, 0x84, 0xb6, 0x5d, 0x95, 0x0b, 0x42, 0x08, 0x89, 0x6e, 0x05, 0xea, 0xaa, 0x15, 0x2b, 0x73,
- 0x40, 0x82, 0x83, 0x35, 0xc9, 0x8c, 0x93, 0x11, 0xb6, 0x27, 0xcc, 0x0c, 0x4d, 0xfb, 0x97, 0x20,
- 0x01, 0x77, 0x2e, 0x1c, 0x91, 0xf8, 0xbf, 0x38, 0x71, 0x44, 0xf3, 0xc6, 0x76, 0x9c, 0x36, 0xda,
- 0xcb, 0x6a, 0xa5, 0xde, 0x3c, 0xdf, 0xf7, 0xf9, 0xcd, 0xfb, 0xf1, 0x3d, 0x27, 0x00, 0x4c, 0xa4,
- 0xe9, 0xf1, 0x42, 0x49, 0x23, 0x89, 0x3f, 0x13, 0x86, 0x66, 0xb7, 0x83, 0x50, 0xcf, 0xa9, 0xe2,
- 0xcc, 0xa1, 0xa3, 0xbf, 0xda, 0xb0, 0xff, 0x4a, 0xe6, 0xb9, 0x30, 0xe7, 0x22, 0x4d, 0x63, 0xfe,
- 0xf3, 0x2f, 0x5c, 0x1b, 0x72, 0x0a, 0xa0, 0xf8, 0x42, 0x6a, 0x61, 0xa4, 0xba, 0x8d, 0xbc, 0xa1,
- 0x37, 0xee, 0x9d, 0x92, 0x63, 0x17, 0xe0, 0x38, 0xae, 0x99, 0xb8, 0xa1, 0x22, 0x4f, 0xa0, 0x9f,
- 0xf1, 0xd4, 0x24, 0x53, 0x8c, 0x96, 0x08, 0x16, 0x6d, 0x0d, 0xbd, 0x71, 0x37, 0x0e, 0x2d, 0xea,
- 0xae, 0xb8, 0x60, 0xe4, 0x19, 0xec, 0x2a, 0x31, 0x9b, 0x37, 0x65, 0x2d, 0x94, 0xed, 0x20, 0x5c,
- 0xeb, 0x3e, 0x83, 0x48, 0xcc, 0x0a, 0xa9, 0x78, 0xb2, 0x9c, 0x0b, 0xc3, 0xf5, 0x82, 0x4e, 0x79,
- 0x32, 0x9d, 0xd3, 0x62, 0xc6, 0xa3, 0xf6, 0xd0, 0x1b, 0x07, 0xf1, 0xa1, 0xe3, 0xbf, 0xaf, 0xe9,
- 0x57, 0xc8, 0x92, 0x0f, 0xa1, 0xb3, 0xa0, 0x66, 0xae, 0xa3, 0xce, 0xb0, 0x35, 0x0e, 0x63, 0x77,
- 0x20, 0x4f, 0xa1, 0x3f, 0x95, 0x59, 0x46, 0x17, 0x9a, 0x27, 0xb6, 0x29, 0x3a, 0xf2, 0x31, 0xca,
- 0x4e, 0x85, 0xda, 0xf2, 0x51, 0xc6, 0x8b, 0x54, 0xaa, 0x29, 0x4f, 0x32, 0x91, 0x0b, 0xa3, 0xa3,
- 0x6d, 0x27, 0x2b, 0xd1, 0x4b, 0x04, 0xc9, 0x63, 0xe8, 0xe6, 0xf4, 0x26, 0x49, 0x45, 0xc6, 0x75,
- 0x14, 0x0c, 0xbd, 0x71, 0x27, 0x0e, 0x72, 0x7a, 0xf3, 0xb5, 0x3d, 0x57, 0x64, 0x26, 0x0a, 0xae,
- 0xa3, 0x6e, 0x4d, 0x5e, 0xda, 0x73, 0x45, 0x4e, 0x6e, 0x0d, 0xd7, 0x11, 0xd4, 0xe4, 0x99, 0x3d,
- 0xdb, 0xe6, 0x58, 0x72, 0x41, 0xcd, 0x74, 0x5e, 0x4a, 0xfa, 0x28, 0xd9, 0xc9, 0xe9, 0xcd, 0x1b,
- 0x8b, 0x3a, 0xdd, 0x13, 0xe8, 0x6b, 0x9a, 0xf2, 0x64, 0x95, 0x43, 0x0f, 0x65, 0xa1, 0x45, 0xaf,
- 0xaa, 0x3c, 0x9a, 0x2a, 0x97, 0x4c, 0xb8, 0xa6, 0x72, 0x09, 0x35, 0x55, 0xee, 0xca, 0x9d, 0x35,
- 0x15, 0xde, 0xf8, 0xb9, 0xff, 0xef, 0xaf, 0xe3, 0xad, 0x60, 0x6b, 0xf4, 0xdf, 0x16, 0x90, 0xa6,
- 0x5d, 0xf4, 0x42, 0x16, 0x9a, 0xdb, 0xaa, 0x52, 0x25, 0x73, 0x9b, 0xf9, 0x1c, 0xed, 0x12, 0xc6,
- 0x81, 0x05, 0xde, 0x50, 0x33, 0x27, 0x8f, 0x60, 0xdb, 0x48, 0x47, 0x6d, 0x21, 0xe5, 0x1b, 0x59,
- 0x11, 0xf8, 0x56, 0xed, 0x01, 0xdf, 0x1e, 0x2f, 0x18, 0x39, 0x80, 0x8e, 0x91, 0x16, 0x6e, 0x23,
- 0xdc, 0x36, 0xf2, 0x82, 0x91, 0x23, 0x08, 0x64, 0xc6, 0x92, 0x5c, 0x32, 0x1e, 0x75, 0x30, 0xc5,
- 0x6d, 0x99, 0xb1, 0x2b, 0xc9, 0xb8, 0xa5, 0x0a, 0xbe, 0x74, 0x94, 0xef, 0xa8, 0x82, 0x2f, 0x91,
- 0x3a, 0x04, 0x7f, 0x22, 0x0a, 0xaa, 0x6e, 0xcb, 0x41, 0x96, 0x27, 0x5b, 0xb6, 0xa2, 0xcb, 0xb2,
- 0xd5, 0x8c, 0x1a, 0x8a, 0x93, 0x0a, 0xe3, 0x50, 0xd1, 0x25, 0x76, 0xfa, 0x9c, 0x1a, 0x4a, 0x86,
- 0x10, 0xf2, 0x82, 0x25, 0x32, 0x75, 0x42, 0x1c, 0x58, 0x10, 0x03, 0x2f, 0xd8, 0xb7, 0x29, 0xaa,
- 0xc8, 0x73, 0xd8, 0x95, 0xd7, 0x5c, 0xa5, 0x99, 0x5c, 0x26, 0x39, 0x55, 0x3f, 0x71, 0x85, 0xb3,
- 0x08, 0xe2, 0x7e, 0x05, 0x5f, 0x21, 0x4a, 0x3e, 0x82, 0x6e, 0x65, 0x35, 0x86, 0x83, 0x08, 0xe2,
- 0x15, 0x60, 0x1b, 0x68, 0xa4, 0x4c, 0x32, 0xaa, 0x66, 0x1c, 0x07, 0x10, 0xc4, 0x81, 0x91, 0xf2,
- 0xd2, 0x9e, 0x5f, 0xb7, 0x83, 0x60, 0xaf, 0x3b, 0xfa, 0xdb, 0xab, 0x5b, 0xcf, 0x33, 0x43, 0x1f,
- 0xce, 0xaa, 0xd6, 0x0b, 0xd7, 0x6e, 0x2c, 0x5c, 0xed, 0x98, 0x3f, 0x3d, 0xe8, 0x35, 0xd2, 0x7e,
- 0xb8, 0x56, 0x19, 0x9d, 0xc1, 0xc1, 0x5a, 0x7f, 0x4b, 0x6f, 0x7f, 0x02, 0x3e, 0xb3, 0x80, 0x8e,
- 0xbc, 0x61, 0x6b, 0xdc, 0x3b, 0x3d, 0xa8, 0x9a, 0xdb, 0x14, 0x97, 0x92, 0x51, 0x56, 0xcd, 0x08,
- 0xdd, 0xf1, 0x2e, 0x33, 0x1a, 0x40, 0xa0, 0xf8, 0xb5, 0xd0, 0x42, 0x16, 0x65, 0x2f, 0xea, 0x73,
- 0xdd, 0xdb, 0x8f, 0xab, 0x8c, 0xcb, 0xdb, 0xca, 0x8c, 0x09, 0xb4, 0xd1, 0xd1, 0xae, 0xbb, 0xf8,
- 0x3c, 0xfa, 0xcd, 0x83, 0x7e, 0x4c, 0x97, 0x0f, 0xea, 0x23, 0x5f, 0xd7, 0xf1, 0x14, 0x76, 0xeb,
- 0xdc, 0xde, 0x52, 0xc3, 0xef, 0x1e, 0xea, 0xde, 0xb9, 0xb5, 0xef, 0xa7, 0x88, 0x67, 0xb0, 0xb7,
- 0x4a, 0xee, 0x2d, 0x55, 0xfc, 0xe1, 0xc1, 0x9e, 0x2d, 0xf5, 0x3b, 0x43, 0x8d, 0x7e, 0x78, 0x65,
- 0xfc, 0x08, 0xdd, 0x3a, 0x3b, 0x9b, 0x7f, 0x63, 0x4f, 0xf1, 0xd9, 0x7e, 0xc8, 0x28, 0x63, 0xc2,
- 0x08, 0x59, 0x68, 0xbc, 0xb1, 0x13, 0xaf, 0x00, 0xcb, 0x32, 0x9e, 0x71, 0xc7, 0xb6, 0x1c, 0x5b,
- 0x03, 0xa3, 0x2f, 0x60, 0xbf, 0x51, 0x7a, 0xd9, 0xa4, 0xe7, 0xd0, 0xd1, 0x16, 0x28, 0xf7, 0x6b,
- 0xbf, 0x2a, 0x7b, 0xa5, 0x74, 0xfc, 0xe9, 0x3f, 0x2d, 0xe8, 0x21, 0xc8, 0xd5, 0xb5, 0x98, 0x72,
- 0xf2, 0x0d, 0xc0, 0xea, 0xb7, 0x88, 0x1c, 0xdd, 0xd9, 0xcb, 0x95, 0xd3, 0x07, 0x83, 0x4d, 0x94,
- 0xbb, 0x7d, 0xf4, 0xc1, 0x4b, 0x8f, 0xbc, 0x5e, 0xff, 0x44, 0x0d, 0x36, 0x6d, 0x78, 0x19, 0xea,
- 0xf1, 0x46, 0x6e, 0x53, 0x2c, 0xf7, 0xfb, 0x70, 0x27, 0x56, 0xd3, 0xbb, 0x77, 0x63, 0xad, 0x59,
- 0x07, 0x63, 0x7d, 0x09, 0xdb, 0xe5, 0x5e, 0x90, 0xc3, 0xda, 0x0c, 0x6b, 0x4b, 0x3c, 0x78, 0x74,
- 0x0f, 0x6f, 0xbc, 0xff, 0x15, 0x04, 0x95, 0x25, 0x49, 0x53, 0xb8, 0x96, 0x45, 0x74, 0x9f, 0x68,
- 0x84, 0x38, 0x6f, 0xda, 0x21, 0xba, 0x3f, 0x9a, 0x32, 0xc8, 0xd1, 0x06, 0x66, 0x15, 0xe5, 0xec,
- 0xe5, 0x0f, 0x96, 0xcf, 0xe8, 0xe4, 0x78, 0x2a, 0xf3, 0x13, 0xf7, 0xf8, 0x42, 0xaa, 0xd9, 0x89,
- 0x7b, 0xeb, 0x05, 0xfe, 0x17, 0x3d, 0x99, 0xc9, 0xf2, 0xbc, 0x98, 0x4c, 0x7c, 0x84, 0x3e, 0xfd,
- 0x3f, 0x00, 0x00, 0xff, 0xff, 0x3f, 0xbe, 0x4d, 0xc2, 0xc2, 0x0a, 0x00, 0x00,
+func init() { proto.RegisterFile("diff.proto", fileDescriptor_diff_30d5eeb6dfe82880) }
+
+var fileDescriptor_diff_30d5eeb6dfe82880 = []byte{
+ // 901 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x56, 0x4d, 0x6f, 0xe3, 0x44,
+ 0x18, 0x96, 0xf3, 0xe1, 0x3a, 0x6f, 0xdc, 0xb4, 0x9d, 0xa2, 0xae, 0x9b, 0xe5, 0x10, 0x59, 0xfb,
+ 0x11, 0x84, 0xb6, 0x5d, 0x95, 0x0b, 0x07, 0x4e, 0xdd, 0x0a, 0xd4, 0x55, 0x2b, 0x2a, 0x73, 0x40,
+ 0x82, 0x83, 0x35, 0xc9, 0x8c, 0x93, 0x11, 0xb6, 0x27, 0xcc, 0x0c, 0x4d, 0xfb, 0x37, 0x00, 0x89,
+ 0x3f, 0x80, 0xc4, 0x85, 0x7f, 0xc4, 0x1f, 0x41, 0x9c, 0xd0, 0x7c, 0xd8, 0x71, 0x9a, 0xb2, 0x97,
+ 0x72, 0xc8, 0xcd, 0xef, 0xf3, 0x3c, 0x79, 0xe7, 0x99, 0xf7, 0xc3, 0x0e, 0x00, 0x61, 0x59, 0x76,
+ 0xb2, 0x10, 0x5c, 0x71, 0xe4, 0xcf, 0x98, 0xc2, 0xf9, 0xfd, 0x30, 0x94, 0x73, 0x2c, 0x28, 0xb1,
+ 0x68, 0xfc, 0x7b, 0x07, 0x0e, 0xde, 0xf1, 0xa2, 0x60, 0xea, 0x82, 0x65, 0x59, 0x42, 0x7f, 0xfc,
+ 0x89, 0x4a, 0x85, 0xce, 0x00, 0x04, 0x5d, 0x70, 0xc9, 0x14, 0x17, 0xf7, 0x91, 0x37, 0xf2, 0xc6,
+ 0xfd, 0x33, 0x74, 0x62, 0x13, 0x9c, 0x24, 0x35, 0x93, 0x34, 0x54, 0xe8, 0x05, 0x0c, 0x72, 0x9a,
+ 0xa9, 0x74, 0x6a, 0xb2, 0xa5, 0x8c, 0x44, 0xad, 0x91, 0x37, 0xee, 0x25, 0xa1, 0x46, 0xed, 0x11,
+ 0x97, 0x04, 0xbd, 0x82, 0x3d, 0xc1, 0x66, 0xf3, 0xa6, 0xac, 0x6d, 0x64, 0xbb, 0x06, 0xae, 0x75,
+ 0x9f, 0x43, 0xc4, 0x66, 0x25, 0x17, 0x34, 0x5d, 0xce, 0x99, 0xa2, 0x72, 0x81, 0xa7, 0x34, 0x9d,
+ 0xce, 0x71, 0x39, 0xa3, 0x51, 0x67, 0xe4, 0x8d, 0x83, 0xe4, 0xc8, 0xf2, 0xdf, 0xd6, 0xf4, 0x3b,
+ 0xc3, 0xa2, 0x8f, 0xa0, 0xbb, 0xc0, 0x6a, 0x2e, 0xa3, 0xee, 0xa8, 0x3d, 0x0e, 0x13, 0x1b, 0xa0,
+ 0x97, 0x30, 0x98, 0xf2, 0x3c, 0xc7, 0x0b, 0x49, 0x53, 0x5d, 0x14, 0x19, 0xf9, 0x26, 0xcb, 0x6e,
+ 0x85, 0xea, 0xeb, 0x1b, 0x19, 0x2d, 0x33, 0x2e, 0xa6, 0x34, 0xcd, 0x59, 0xc1, 0x94, 0x8c, 0x76,
+ 0xac, 0xcc, 0xa1, 0x57, 0x06, 0x44, 0xcf, 0xa1, 0x57, 0xe0, 0xbb, 0x34, 0x63, 0x39, 0x95, 0x51,
+ 0x30, 0xf2, 0xc6, 0xdd, 0x24, 0x28, 0xf0, 0xdd, 0x97, 0x3a, 0xae, 0xc8, 0x9c, 0x95, 0x54, 0x46,
+ 0xbd, 0x9a, 0xbc, 0xd2, 0x71, 0x45, 0x4e, 0xee, 0x15, 0x95, 0x11, 0xd4, 0xe4, 0xb9, 0x8e, 0x75,
+ 0x71, 0x34, 0xb9, 0xc0, 0x6a, 0x3a, 0x77, 0x92, 0x81, 0x91, 0xec, 0x16, 0xf8, 0xee, 0x46, 0xa3,
+ 0x56, 0xf7, 0x02, 0x06, 0x12, 0x67, 0x34, 0x5d, 0x79, 0xe8, 0x1b, 0x59, 0xa8, 0xd1, 0xeb, 0xca,
+ 0x47, 0x53, 0x65, 0xcd, 0x84, 0x6b, 0x2a, 0x6b, 0xa8, 0xa9, 0xb2, 0x47, 0xee, 0xae, 0xa9, 0xcc,
+ 0x89, 0xf1, 0xdf, 0x2d, 0x40, 0xcd, 0x31, 0x91, 0x0b, 0x5e, 0x4a, 0xaa, 0x6f, 0x93, 0x09, 0x5e,
+ 0x68, 0xc7, 0x73, 0x33, 0x26, 0x61, 0x12, 0x68, 0xe0, 0x06, 0xab, 0x39, 0x7a, 0x06, 0x3b, 0x8a,
+ 0x5b, 0xaa, 0x65, 0x28, 0x5f, 0xf1, 0x8a, 0x30, 0xbf, 0xaa, 0x7b, 0xef, 0xeb, 0xf0, 0x92, 0xa0,
+ 0x43, 0xe8, 0x2a, 0xae, 0xe1, 0x8e, 0x81, 0x3b, 0x8a, 0x5f, 0x12, 0x74, 0x0c, 0x01, 0xcf, 0x49,
+ 0x5a, 0x70, 0x42, 0xa3, 0xae, 0xb1, 0xb6, 0xc3, 0x73, 0x72, 0xcd, 0x09, 0xd5, 0x54, 0x49, 0x97,
+ 0x96, 0xf2, 0x2d, 0x55, 0xd2, 0xa5, 0xa1, 0x8e, 0xc0, 0x9f, 0xb0, 0x12, 0x8b, 0x7b, 0xd7, 0x40,
+ 0x17, 0xe9, 0xeb, 0x0a, 0xbc, 0x74, 0x25, 0x26, 0x58, 0x61, 0xd3, 0xa1, 0x30, 0x09, 0x05, 0x5e,
+ 0x9a, 0x0a, 0x5f, 0x60, 0x85, 0xd1, 0x08, 0x42, 0x5a, 0x92, 0x94, 0x67, 0x56, 0x68, 0x1a, 0x15,
+ 0x24, 0x40, 0x4b, 0xf2, 0x75, 0x66, 0x54, 0xe8, 0x35, 0xec, 0xf1, 0x5b, 0x2a, 0xb2, 0x9c, 0x2f,
+ 0xd3, 0x02, 0x8b, 0x1f, 0xa8, 0x30, 0x3d, 0x08, 0x92, 0x41, 0x05, 0x5f, 0x1b, 0x14, 0x7d, 0x0c,
+ 0xbd, 0x6a, 0xc4, 0x88, 0x69, 0x40, 0x90, 0xac, 0x00, 0x5d, 0x40, 0xc5, 0x79, 0x9a, 0x63, 0x31,
+ 0xa3, 0xa6, 0xf0, 0x41, 0x12, 0x28, 0xce, 0xaf, 0x74, 0xfc, 0xbe, 0x13, 0x04, 0xfb, 0xbd, 0xf8,
+ 0x4f, 0xaf, 0x2e, 0x3d, 0xcd, 0x15, 0xde, 0x9e, 0x15, 0xad, 0x17, 0xad, 0xd3, 0x58, 0xb4, 0xf8,
+ 0x0f, 0x0f, 0xfa, 0x0d, 0xbb, 0xdb, 0x3b, 0x22, 0xf1, 0x39, 0x1c, 0xae, 0xd5, 0xd5, 0xcd, 0xf4,
+ 0xa7, 0xe0, 0x13, 0x0d, 0xc8, 0xc8, 0x1b, 0xb5, 0xc7, 0xfd, 0xb3, 0xc3, 0xaa, 0xa8, 0x4d, 0xb1,
+ 0x93, 0xc4, 0xa4, 0xea, 0x8d, 0x99, 0x8a, 0xa7, 0xf4, 0x66, 0x08, 0x81, 0xa0, 0xb7, 0x4c, 0x32,
+ 0x5e, 0xba, 0x5a, 0xd4, 0x71, 0xfc, 0x49, 0xe5, 0xd4, 0x9d, 0xe2, 0x9c, 0x22, 0xe8, 0x98, 0x09,
+ 0xb6, 0x55, 0x35, 0xcf, 0xf1, 0xcf, 0x1e, 0x0c, 0x12, 0xbc, 0xdc, 0xaa, 0x97, 0x79, 0xfc, 0x12,
+ 0xf6, 0x6a, 0x4f, 0x1f, 0xf0, 0xfe, 0x8b, 0x67, 0x74, 0x4f, 0x2e, 0xe5, 0xff, 0x6b, 0xfe, 0x15,
+ 0xec, 0xaf, 0x4c, 0x7d, 0xc0, 0xfd, 0xaf, 0x1e, 0xec, 0xeb, 0x2b, 0x7e, 0xa3, 0xb0, 0x92, 0xdb,
+ 0x63, 0xff, 0x7b, 0xe8, 0xd5, 0xae, 0xb4, 0xef, 0xc6, 0x1e, 0x9a, 0x67, 0xfd, 0x82, 0xc2, 0x84,
+ 0x30, 0xc5, 0x78, 0x29, 0xcd, 0x49, 0xdd, 0x64, 0x05, 0x68, 0x96, 0xd0, 0x9c, 0x5a, 0xb6, 0x6d,
+ 0xd9, 0x1a, 0x88, 0xbf, 0x80, 0x83, 0xc6, 0x95, 0x5d, 0x71, 0x5e, 0x43, 0x57, 0x6a, 0xc0, 0xed,
+ 0xcf, 0x41, 0x75, 0xdd, 0x95, 0xd2, 0xf2, 0x67, 0x7f, 0xb5, 0xa1, 0x6f, 0x40, 0x2a, 0x6e, 0xd9,
+ 0x94, 0xa2, 0x6b, 0x80, 0xd5, 0x37, 0x06, 0x1d, 0x3f, 0xd8, 0xbb, 0xd5, 0x44, 0x0f, 0x87, 0x8f,
+ 0x51, 0xf6, 0xf4, 0xd8, 0xff, 0xe7, 0xb7, 0x71, 0x2b, 0x68, 0xbd, 0xf5, 0xd0, 0xcd, 0xfa, 0x8b,
+ 0x68, 0xf8, 0xd8, 0x1e, 0xbb, 0x84, 0xcf, 0x1f, 0xe5, 0xfe, 0x3b, 0xa3, 0xfd, 0x06, 0x3c, 0xc8,
+ 0xd8, 0x9c, 0xdb, 0x87, 0x19, 0xd7, 0xc6, 0xa7, 0x91, 0xf1, 0x02, 0x76, 0xdc, 0x66, 0xa0, 0xa3,
+ 0x7a, 0x2c, 0xd6, 0xd6, 0x77, 0xf8, 0x6c, 0x03, 0xdf, 0xc8, 0xf2, 0x15, 0x04, 0xd5, 0x88, 0xa2,
+ 0xa6, 0x7c, 0xcd, 0x51, 0xb4, 0x49, 0x6c, 0x24, 0x7a, 0xdf, 0x1c, 0x96, 0x68, 0xb3, 0x71, 0x2e,
+ 0xd5, 0xf1, 0x23, 0xcc, 0xc3, 0x5c, 0xe7, 0x6f, 0xbf, 0xd3, 0xaa, 0x1c, 0x4f, 0x4e, 0xa6, 0xbc,
+ 0x38, 0xb5, 0x8f, 0x6f, 0xb8, 0x98, 0x9d, 0xda, 0xdf, 0xbe, 0x31, 0xff, 0x3f, 0x4f, 0x67, 0xdc,
+ 0xc5, 0x8b, 0xc9, 0xc4, 0x37, 0xd0, 0x67, 0xff, 0x06, 0x00, 0x00, 0xff, 0xff, 0x5d, 0x98, 0xe6,
+ 0x5d, 0xb6, 0x0a, 0x00, 0x00,
}
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/namespace.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/namespace.pb.go
index e8a310299..256fa9941 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/namespace.pb.go
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/namespace.pb.go
@@ -35,7 +35,7 @@ func (m *AddNamespaceRequest) Reset() { *m = AddNamespaceRequest{} }
func (m *AddNamespaceRequest) String() string { return proto.CompactTextString(m) }
func (*AddNamespaceRequest) ProtoMessage() {}
func (*AddNamespaceRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_namespace_43c8213dcd148a76, []int{0}
+ return fileDescriptor_namespace_486935e822b7e725, []int{0}
}
func (m *AddNamespaceRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_AddNamespaceRequest.Unmarshal(m, b)
@@ -81,7 +81,7 @@ func (m *RemoveNamespaceRequest) Reset() { *m = RemoveNamespaceRequest{}
func (m *RemoveNamespaceRequest) String() string { return proto.CompactTextString(m) }
func (*RemoveNamespaceRequest) ProtoMessage() {}
func (*RemoveNamespaceRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_namespace_43c8213dcd148a76, []int{1}
+ return fileDescriptor_namespace_486935e822b7e725, []int{1}
}
func (m *RemoveNamespaceRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RemoveNamespaceRequest.Unmarshal(m, b)
@@ -128,7 +128,7 @@ func (m *RenameNamespaceRequest) Reset() { *m = RenameNamespaceRequest{}
func (m *RenameNamespaceRequest) String() string { return proto.CompactTextString(m) }
func (*RenameNamespaceRequest) ProtoMessage() {}
func (*RenameNamespaceRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_namespace_43c8213dcd148a76, []int{2}
+ return fileDescriptor_namespace_486935e822b7e725, []int{2}
}
func (m *RenameNamespaceRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RenameNamespaceRequest.Unmarshal(m, b)
@@ -181,7 +181,7 @@ func (m *NamespaceExistsRequest) Reset() { *m = NamespaceExistsRequest{}
func (m *NamespaceExistsRequest) String() string { return proto.CompactTextString(m) }
func (*NamespaceExistsRequest) ProtoMessage() {}
func (*NamespaceExistsRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_namespace_43c8213dcd148a76, []int{3}
+ return fileDescriptor_namespace_486935e822b7e725, []int{3}
}
func (m *NamespaceExistsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_NamespaceExistsRequest.Unmarshal(m, b)
@@ -226,7 +226,7 @@ func (m *NamespaceExistsResponse) Reset() { *m = NamespaceExistsResponse
func (m *NamespaceExistsResponse) String() string { return proto.CompactTextString(m) }
func (*NamespaceExistsResponse) ProtoMessage() {}
func (*NamespaceExistsResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_namespace_43c8213dcd148a76, []int{4}
+ return fileDescriptor_namespace_486935e822b7e725, []int{4}
}
func (m *NamespaceExistsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_NamespaceExistsResponse.Unmarshal(m, b)
@@ -263,7 +263,7 @@ func (m *AddNamespaceResponse) Reset() { *m = AddNamespaceResponse{} }
func (m *AddNamespaceResponse) String() string { return proto.CompactTextString(m) }
func (*AddNamespaceResponse) ProtoMessage() {}
func (*AddNamespaceResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_namespace_43c8213dcd148a76, []int{5}
+ return fileDescriptor_namespace_486935e822b7e725, []int{5}
}
func (m *AddNamespaceResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_AddNamespaceResponse.Unmarshal(m, b)
@@ -293,7 +293,7 @@ func (m *RemoveNamespaceResponse) Reset() { *m = RemoveNamespaceResponse
func (m *RemoveNamespaceResponse) String() string { return proto.CompactTextString(m) }
func (*RemoveNamespaceResponse) ProtoMessage() {}
func (*RemoveNamespaceResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_namespace_43c8213dcd148a76, []int{6}
+ return fileDescriptor_namespace_486935e822b7e725, []int{6}
}
func (m *RemoveNamespaceResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RemoveNamespaceResponse.Unmarshal(m, b)
@@ -323,7 +323,7 @@ func (m *RenameNamespaceResponse) Reset() { *m = RenameNamespaceResponse
func (m *RenameNamespaceResponse) String() string { return proto.CompactTextString(m) }
func (*RenameNamespaceResponse) ProtoMessage() {}
func (*RenameNamespaceResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_namespace_43c8213dcd148a76, []int{7}
+ return fileDescriptor_namespace_486935e822b7e725, []int{7}
}
func (m *RenameNamespaceResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RenameNamespaceResponse.Unmarshal(m, b)
@@ -525,30 +525,29 @@ var _NamespaceService_serviceDesc = grpc.ServiceDesc{
Metadata: "namespace.proto",
}
-func init() { proto.RegisterFile("namespace.proto", fileDescriptor_namespace_43c8213dcd148a76) }
-
-var fileDescriptor_namespace_43c8213dcd148a76 = []byte{
- // 341 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x93, 0xcb, 0x4e, 0x02, 0x31,
- 0x14, 0x86, 0xa1, 0x9a, 0x09, 0x1e, 0x89, 0x98, 0x6a, 0x00, 0xd1, 0x78, 0xe9, 0x8a, 0x0d, 0x83,
- 0x97, 0x9d, 0x3b, 0x4d, 0x5c, 0x99, 0xb8, 0x18, 0x49, 0x4c, 0xdc, 0x98, 0x02, 0xc7, 0x91, 0x84,
- 0xa1, 0x63, 0x5b, 0x89, 0x3e, 0x89, 0xcf, 0xe7, 0x2b, 0xf8, 0x04, 0xa6, 0xed, 0x00, 0x03, 0x94,
- 0x8d, 0x61, 0xd7, 0xfe, 0xff, 0xe9, 0x77, 0xe6, 0x5c, 0x06, 0x2a, 0x23, 0x9e, 0xa0, 0x4a, 0x79,
- 0x0f, 0xc3, 0x54, 0x0a, 0x2d, 0x68, 0x10, 0x0f, 0x34, 0x1f, 0x7e, 0x35, 0xca, 0xea, 0x8d, 0x4b,
- 0xec, 0x3b, 0x95, 0x75, 0x60, 0xef, 0xa6, 0xdf, 0x7f, 0x98, 0xc4, 0x46, 0xf8, 0xfe, 0x81, 0x4a,
- 0xd3, 0x33, 0x28, 0x2b, 0x2d, 0x24, 0x8f, 0xf1, 0xc5, 0x70, 0xea, 0xc5, 0xd3, 0x62, 0x73, 0x2b,
- 0xda, 0xce, 0x34, 0x13, 0x4e, 0x29, 0x6c, 0x5a, 0x8b, 0x58, 0xcb, 0x9e, 0xaf, 0x83, 0xdf, 0xef,
- 0x26, 0x29, 0x15, 0xd9, 0x13, 0x54, 0x23, 0x4c, 0xc4, 0x18, 0xd7, 0x0d, 0x8e, 0x0d, 0xd8, 0x28,
- 0xff, 0x04, 0xbf, 0x4a, 0x91, 0x4c, 0xc0, 0xe6, 0x4c, 0x77, 0x80, 0x68, 0x51, 0xdf, 0xb0, 0x0a,
- 0xd1, 0x22, 0x5f, 0xc1, 0x34, 0xc5, 0xdd, 0xe7, 0x40, 0x69, 0xb5, 0x96, 0x0a, 0x08, 0xbb, 0x80,
- 0xda, 0x12, 0x58, 0xa5, 0x62, 0xa4, 0x90, 0x56, 0x21, 0x40, 0xab, 0x58, 0x66, 0x29, 0xca, 0x6e,
- 0xac, 0x0a, 0xfb, 0xf3, 0x33, 0x72, 0xf1, 0xec, 0x00, 0x6a, 0x4b, 0x5d, 0xce, 0x5b, 0x0b, 0x7d,
- 0x72, 0xd6, 0xe5, 0x0f, 0x81, 0xdd, 0xa9, 0xfa, 0x88, 0x72, 0x3c, 0xe8, 0x21, 0xbd, 0x87, 0x72,
- 0x3e, 0x05, 0x3d, 0x0c, 0xdd, 0xb6, 0x84, 0x9e, 0xe5, 0x68, 0x1c, 0xf9, 0xcd, 0x2c, 0x75, 0x81,
- 0x76, 0xa0, 0xb2, 0xf0, 0x5d, 0xf4, 0x78, 0xf2, 0xc4, 0xbf, 0x16, 0x8d, 0x93, 0x95, 0xfe, 0x3c,
- 0x75, 0xae, 0xa4, 0x3c, 0xd5, 0xb7, 0x13, 0x79, 0xaa, 0xb7, 0x17, 0x8e, 0xba, 0x30, 0x8e, 0x19,
- 0xd5, 0xbf, 0x00, 0x33, 0xea, 0x8a, 0x39, 0xb2, 0xc2, 0xed, 0xf9, 0xb3, 0x89, 0x19, 0xf2, 0x6e,
- 0xd8, 0x13, 0x49, 0xdb, 0x1d, 0x5b, 0x42, 0xc6, 0x6d, 0xf7, 0xb2, 0x65, 0xff, 0xbd, 0x76, 0x2c,
- 0xb2, 0x7b, 0xda, 0xed, 0x06, 0x56, 0xba, 0xfa, 0x0b, 0x00, 0x00, 0xff, 0xff, 0xf7, 0xce, 0x4c,
- 0xf1, 0xb7, 0x03, 0x00, 0x00,
+func init() { proto.RegisterFile("namespace.proto", fileDescriptor_namespace_486935e822b7e725) }
+
+var fileDescriptor_namespace_486935e822b7e725 = []byte{
+ // 335 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x93, 0xcd, 0x4e, 0xc2, 0x40,
+ 0x10, 0xc7, 0xc3, 0x6a, 0x1a, 0x1c, 0x89, 0x98, 0xd5, 0x00, 0xa2, 0xf1, 0xa3, 0x27, 0x2e, 0x14,
+ 0x3f, 0x9e, 0x40, 0x13, 0x6f, 0x46, 0x63, 0xbd, 0x71, 0x21, 0x0b, 0x8c, 0xb5, 0x09, 0x65, 0xeb,
+ 0xee, 0x4a, 0xf4, 0x49, 0x7c, 0x56, 0x3d, 0x99, 0xdd, 0x6d, 0xa1, 0x94, 0xe5, 0xa2, 0xde, 0x66,
+ 0xff, 0xff, 0xd9, 0xdf, 0x4e, 0x67, 0xa6, 0x50, 0x9f, 0xb2, 0x04, 0x65, 0xca, 0x46, 0x18, 0xa4,
+ 0x82, 0x2b, 0x4e, 0xbd, 0x28, 0x56, 0x6c, 0xf2, 0xd1, 0xae, 0xc9, 0x17, 0x26, 0x70, 0x6c, 0x55,
+ 0xff, 0x0e, 0xf6, 0xae, 0xc7, 0xe3, 0xfb, 0x3c, 0x37, 0xc4, 0xd7, 0x37, 0x94, 0x8a, 0x9e, 0x41,
+ 0x4d, 0x2a, 0x2e, 0x58, 0x84, 0x03, 0xcd, 0x69, 0x55, 0x4e, 0x2b, 0x9d, 0xad, 0x70, 0x3b, 0xd3,
+ 0x74, 0x3a, 0xa5, 0xb0, 0x69, 0x2c, 0x62, 0x2c, 0x13, 0xfb, 0x0f, 0xd0, 0x08, 0x31, 0xe1, 0x33,
+ 0xfc, 0x2f, 0xe0, 0x40, 0x03, 0x75, 0xf4, 0x4b, 0xe0, 0xb3, 0xe0, 0x49, 0x0e, 0xd4, 0x31, 0xdd,
+ 0x01, 0xa2, 0x78, 0x6b, 0xc3, 0x28, 0x44, 0x71, 0x5d, 0xf1, 0x1c, 0x7d, 0xfb, 0x1e, 0x4b, 0x25,
+ 0xff, 0x58, 0xf1, 0x05, 0x34, 0x57, 0x80, 0x32, 0xe5, 0x53, 0x89, 0xb4, 0x01, 0x1e, 0x1a, 0xc5,
+ 0xb0, 0xaa, 0x61, 0x76, 0xf2, 0x1b, 0xb0, 0xbf, 0x3c, 0x03, 0x9b, 0xef, 0x1f, 0x40, 0x73, 0xa5,
+ 0x9b, 0x45, 0xab, 0xd4, 0x17, 0x6b, 0x5d, 0x7e, 0x11, 0xd8, 0x9d, 0xab, 0x4f, 0x28, 0x66, 0xf1,
+ 0x08, 0xe9, 0x23, 0xd4, 0x8a, 0x4f, 0xd0, 0xc3, 0xc0, 0x6e, 0x43, 0xe0, 0x18, 0x7e, 0xfb, 0xc8,
+ 0x6d, 0x66, 0x4f, 0x7b, 0xdf, 0x9f, 0x1d, 0x52, 0xad, 0xd0, 0x3e, 0xd4, 0x4b, 0xd5, 0xd1, 0xe3,
+ 0xfc, 0xa2, 0x7b, 0x09, 0xda, 0x27, 0x6b, 0x7d, 0x17, 0x7b, 0xe9, 0xf3, 0x8a, 0x6c, 0xd7, 0x3e,
+ 0x14, 0xd9, 0xce, 0xbe, 0x14, 0xd9, 0xa5, 0x01, 0x2d, 0xd8, 0xee, 0x55, 0x58, 0xb0, 0xd7, 0x4c,
+ 0x36, 0x63, 0x93, 0x9b, 0xf3, 0xbe, 0xce, 0x9c, 0xb0, 0x61, 0x30, 0xe2, 0x49, 0xcf, 0x86, 0x5d,
+ 0x2e, 0xa2, 0x9e, 0xbd, 0xdf, 0x35, 0xff, 0x5c, 0x2f, 0xe2, 0xd9, 0x39, 0x1d, 0x0e, 0x3d, 0x23,
+ 0x5d, 0xfd, 0x04, 0x00, 0x00, 0xff, 0xff, 0x56, 0x5c, 0xab, 0xd2, 0xaf, 0x03, 0x00, 0x00,
}
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/notifications.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/notifications.pb.go
deleted file mode 100644
index 11dac57d3..000000000
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/notifications.pb.go
+++ /dev/null
@@ -1,189 +0,0 @@
-// Code generated by protoc-gen-go. DO NOT EDIT.
-// source: notifications.proto
-
-package gitalypb // import "gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
-
-import proto "github.com/golang/protobuf/proto"
-import fmt "fmt"
-import math "math"
-
-import (
- context "golang.org/x/net/context"
- grpc "google.golang.org/grpc"
-)
-
-// Reference imports to suppress errors if they are not otherwise used.
-var _ = proto.Marshal
-var _ = fmt.Errorf
-var _ = math.Inf
-
-// This is a compile-time assertion to ensure that this generated file
-// is compatible with the proto package it is being compiled against.
-// A compilation error at this line likely means your copy of the
-// proto package needs to be updated.
-const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
-
-type PostReceiveRequest struct {
- Repository *Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
-}
-
-func (m *PostReceiveRequest) Reset() { *m = PostReceiveRequest{} }
-func (m *PostReceiveRequest) String() string { return proto.CompactTextString(m) }
-func (*PostReceiveRequest) ProtoMessage() {}
-func (*PostReceiveRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_notifications_d4195fd8574bef8b, []int{0}
-}
-func (m *PostReceiveRequest) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_PostReceiveRequest.Unmarshal(m, b)
-}
-func (m *PostReceiveRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_PostReceiveRequest.Marshal(b, m, deterministic)
-}
-func (dst *PostReceiveRequest) XXX_Merge(src proto.Message) {
- xxx_messageInfo_PostReceiveRequest.Merge(dst, src)
-}
-func (m *PostReceiveRequest) XXX_Size() int {
- return xxx_messageInfo_PostReceiveRequest.Size(m)
-}
-func (m *PostReceiveRequest) XXX_DiscardUnknown() {
- xxx_messageInfo_PostReceiveRequest.DiscardUnknown(m)
-}
-
-var xxx_messageInfo_PostReceiveRequest proto.InternalMessageInfo
-
-func (m *PostReceiveRequest) GetRepository() *Repository {
- if m != nil {
- return m.Repository
- }
- return nil
-}
-
-type PostReceiveResponse struct {
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
-}
-
-func (m *PostReceiveResponse) Reset() { *m = PostReceiveResponse{} }
-func (m *PostReceiveResponse) String() string { return proto.CompactTextString(m) }
-func (*PostReceiveResponse) ProtoMessage() {}
-func (*PostReceiveResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_notifications_d4195fd8574bef8b, []int{1}
-}
-func (m *PostReceiveResponse) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_PostReceiveResponse.Unmarshal(m, b)
-}
-func (m *PostReceiveResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_PostReceiveResponse.Marshal(b, m, deterministic)
-}
-func (dst *PostReceiveResponse) XXX_Merge(src proto.Message) {
- xxx_messageInfo_PostReceiveResponse.Merge(dst, src)
-}
-func (m *PostReceiveResponse) XXX_Size() int {
- return xxx_messageInfo_PostReceiveResponse.Size(m)
-}
-func (m *PostReceiveResponse) XXX_DiscardUnknown() {
- xxx_messageInfo_PostReceiveResponse.DiscardUnknown(m)
-}
-
-var xxx_messageInfo_PostReceiveResponse proto.InternalMessageInfo
-
-func init() {
- proto.RegisterType((*PostReceiveRequest)(nil), "gitaly.PostReceiveRequest")
- proto.RegisterType((*PostReceiveResponse)(nil), "gitaly.PostReceiveResponse")
-}
-
-// Reference imports to suppress errors if they are not otherwise used.
-var _ context.Context
-var _ grpc.ClientConn
-
-// This is a compile-time assertion to ensure that this generated file
-// is compatible with the grpc package it is being compiled against.
-const _ = grpc.SupportPackageIsVersion4
-
-// NotificationServiceClient is the client API for NotificationService service.
-//
-// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
-type NotificationServiceClient interface {
- PostReceive(ctx context.Context, in *PostReceiveRequest, opts ...grpc.CallOption) (*PostReceiveResponse, error)
-}
-
-type notificationServiceClient struct {
- cc *grpc.ClientConn
-}
-
-func NewNotificationServiceClient(cc *grpc.ClientConn) NotificationServiceClient {
- return &notificationServiceClient{cc}
-}
-
-func (c *notificationServiceClient) PostReceive(ctx context.Context, in *PostReceiveRequest, opts ...grpc.CallOption) (*PostReceiveResponse, error) {
- out := new(PostReceiveResponse)
- err := c.cc.Invoke(ctx, "/gitaly.NotificationService/PostReceive", in, out, opts...)
- if err != nil {
- return nil, err
- }
- return out, nil
-}
-
-// NotificationServiceServer is the server API for NotificationService service.
-type NotificationServiceServer interface {
- PostReceive(context.Context, *PostReceiveRequest) (*PostReceiveResponse, error)
-}
-
-func RegisterNotificationServiceServer(s *grpc.Server, srv NotificationServiceServer) {
- s.RegisterService(&_NotificationService_serviceDesc, srv)
-}
-
-func _NotificationService_PostReceive_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(PostReceiveRequest)
- if err := dec(in); err != nil {
- return nil, err
- }
- if interceptor == nil {
- return srv.(NotificationServiceServer).PostReceive(ctx, in)
- }
- info := &grpc.UnaryServerInfo{
- Server: srv,
- FullMethod: "/gitaly.NotificationService/PostReceive",
- }
- handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(NotificationServiceServer).PostReceive(ctx, req.(*PostReceiveRequest))
- }
- return interceptor(ctx, in, info, handler)
-}
-
-var _NotificationService_serviceDesc = grpc.ServiceDesc{
- ServiceName: "gitaly.NotificationService",
- HandlerType: (*NotificationServiceServer)(nil),
- Methods: []grpc.MethodDesc{
- {
- MethodName: "PostReceive",
- Handler: _NotificationService_PostReceive_Handler,
- },
- },
- Streams: []grpc.StreamDesc{},
- Metadata: "notifications.proto",
-}
-
-func init() { proto.RegisterFile("notifications.proto", fileDescriptor_notifications_d4195fd8574bef8b) }
-
-var fileDescriptor_notifications_d4195fd8574bef8b = []byte{
- // 209 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x12, 0xce, 0xcb, 0x2f, 0xc9,
- 0x4c, 0xcb, 0x4c, 0x4e, 0x2c, 0xc9, 0xcc, 0xcf, 0x2b, 0xd6, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17,
- 0x62, 0x4b, 0xcf, 0x2c, 0x49, 0xcc, 0xa9, 0x94, 0xe2, 0x29, 0xce, 0x48, 0x2c, 0x4a, 0x4d, 0x81,
- 0x88, 0x2a, 0x05, 0x70, 0x09, 0x05, 0xe4, 0x17, 0x97, 0x04, 0xa5, 0x26, 0xa7, 0x66, 0x96, 0xa5,
- 0x06, 0xa5, 0x16, 0x96, 0xa6, 0x16, 0x97, 0x08, 0x19, 0x71, 0x71, 0x15, 0xa5, 0x16, 0xe4, 0x17,
- 0x67, 0x96, 0xe4, 0x17, 0x55, 0x4a, 0x30, 0x2a, 0x30, 0x6a, 0x70, 0x1b, 0x09, 0xe9, 0x41, 0x0c,
- 0xd0, 0x0b, 0x82, 0xcb, 0x04, 0x21, 0xa9, 0xb2, 0x62, 0xfb, 0x34, 0x5d, 0x83, 0x89, 0x83, 0x49,
- 0x49, 0x94, 0x4b, 0x18, 0xc5, 0xc4, 0xe2, 0x82, 0xfc, 0xbc, 0xe2, 0x54, 0xa3, 0x78, 0x2e, 0x61,
- 0x3f, 0x24, 0x57, 0x05, 0xa7, 0x16, 0x95, 0x65, 0x26, 0xa7, 0x0a, 0x79, 0x70, 0x71, 0x23, 0xa9,
- 0x16, 0x92, 0x82, 0x59, 0x82, 0xe9, 0x28, 0x29, 0x69, 0xac, 0x72, 0x10, 0xe3, 0x95, 0x18, 0x9c,
- 0x0c, 0xa2, 0x40, 0xf2, 0x39, 0x89, 0x49, 0x7a, 0xc9, 0xf9, 0xb9, 0xfa, 0x10, 0xa6, 0x6e, 0x7e,
- 0x51, 0xba, 0x3e, 0x44, 0x97, 0x2e, 0xd8, 0xbf, 0xfa, 0xe9, 0xf9, 0x50, 0x7e, 0x41, 0x52, 0x12,
- 0x1b, 0x58, 0xc8, 0x18, 0x10, 0x00, 0x00, 0xff, 0xff, 0x55, 0x04, 0xb1, 0x1c, 0x2f, 0x01, 0x00,
- 0x00,
-}
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/objectpool.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/objectpool.pb.go
index bc6a03b2f..d28268274 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/objectpool.pb.go
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/objectpool.pb.go
@@ -37,7 +37,7 @@ func (m *CreateObjectPoolRequest) Reset() { *m = CreateObjectPoolRequest
func (m *CreateObjectPoolRequest) String() string { return proto.CompactTextString(m) }
func (*CreateObjectPoolRequest) ProtoMessage() {}
func (*CreateObjectPoolRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_objectpool_52b9473682df345b, []int{0}
+ return fileDescriptor_objectpool_9f08c40ea75d0855, []int{0}
}
func (m *CreateObjectPoolRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateObjectPoolRequest.Unmarshal(m, b)
@@ -81,7 +81,7 @@ func (m *CreateObjectPoolResponse) Reset() { *m = CreateObjectPoolRespon
func (m *CreateObjectPoolResponse) String() string { return proto.CompactTextString(m) }
func (*CreateObjectPoolResponse) ProtoMessage() {}
func (*CreateObjectPoolResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_objectpool_52b9473682df345b, []int{1}
+ return fileDescriptor_objectpool_9f08c40ea75d0855, []int{1}
}
func (m *CreateObjectPoolResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateObjectPoolResponse.Unmarshal(m, b)
@@ -114,7 +114,7 @@ func (m *DeleteObjectPoolRequest) Reset() { *m = DeleteObjectPoolRequest
func (m *DeleteObjectPoolRequest) String() string { return proto.CompactTextString(m) }
func (*DeleteObjectPoolRequest) ProtoMessage() {}
func (*DeleteObjectPoolRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_objectpool_52b9473682df345b, []int{2}
+ return fileDescriptor_objectpool_9f08c40ea75d0855, []int{2}
}
func (m *DeleteObjectPoolRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteObjectPoolRequest.Unmarshal(m, b)
@@ -151,7 +151,7 @@ func (m *DeleteObjectPoolResponse) Reset() { *m = DeleteObjectPoolRespon
func (m *DeleteObjectPoolResponse) String() string { return proto.CompactTextString(m) }
func (*DeleteObjectPoolResponse) ProtoMessage() {}
func (*DeleteObjectPoolResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_objectpool_52b9473682df345b, []int{3}
+ return fileDescriptor_objectpool_9f08c40ea75d0855, []int{3}
}
func (m *DeleteObjectPoolResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteObjectPoolResponse.Unmarshal(m, b)
@@ -183,7 +183,7 @@ func (m *LinkRepositoryToObjectPoolRequest) Reset() { *m = LinkRepositor
func (m *LinkRepositoryToObjectPoolRequest) String() string { return proto.CompactTextString(m) }
func (*LinkRepositoryToObjectPoolRequest) ProtoMessage() {}
func (*LinkRepositoryToObjectPoolRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_objectpool_52b9473682df345b, []int{4}
+ return fileDescriptor_objectpool_9f08c40ea75d0855, []int{4}
}
func (m *LinkRepositoryToObjectPoolRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LinkRepositoryToObjectPoolRequest.Unmarshal(m, b)
@@ -227,7 +227,7 @@ func (m *LinkRepositoryToObjectPoolResponse) Reset() { *m = LinkReposito
func (m *LinkRepositoryToObjectPoolResponse) String() string { return proto.CompactTextString(m) }
func (*LinkRepositoryToObjectPoolResponse) ProtoMessage() {}
func (*LinkRepositoryToObjectPoolResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_objectpool_52b9473682df345b, []int{5}
+ return fileDescriptor_objectpool_9f08c40ea75d0855, []int{5}
}
func (m *LinkRepositoryToObjectPoolResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LinkRepositoryToObjectPoolResponse.Unmarshal(m, b)
@@ -261,7 +261,7 @@ func (m *UnlinkRepositoryFromObjectPoolRequest) Reset() { *m = UnlinkRep
func (m *UnlinkRepositoryFromObjectPoolRequest) String() string { return proto.CompactTextString(m) }
func (*UnlinkRepositoryFromObjectPoolRequest) ProtoMessage() {}
func (*UnlinkRepositoryFromObjectPoolRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_objectpool_52b9473682df345b, []int{6}
+ return fileDescriptor_objectpool_9f08c40ea75d0855, []int{6}
}
func (m *UnlinkRepositoryFromObjectPoolRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UnlinkRepositoryFromObjectPoolRequest.Unmarshal(m, b)
@@ -307,7 +307,7 @@ func (m *UnlinkRepositoryFromObjectPoolResponse) Reset() {
func (m *UnlinkRepositoryFromObjectPoolResponse) String() string { return proto.CompactTextString(m) }
func (*UnlinkRepositoryFromObjectPoolResponse) ProtoMessage() {}
func (*UnlinkRepositoryFromObjectPoolResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_objectpool_52b9473682df345b, []int{7}
+ return fileDescriptor_objectpool_9f08c40ea75d0855, []int{7}
}
func (m *UnlinkRepositoryFromObjectPoolResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UnlinkRepositoryFromObjectPoolResponse.Unmarshal(m, b)
@@ -338,7 +338,7 @@ func (m *ReduplicateRepositoryRequest) Reset() { *m = ReduplicateReposit
func (m *ReduplicateRepositoryRequest) String() string { return proto.CompactTextString(m) }
func (*ReduplicateRepositoryRequest) ProtoMessage() {}
func (*ReduplicateRepositoryRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_objectpool_52b9473682df345b, []int{8}
+ return fileDescriptor_objectpool_9f08c40ea75d0855, []int{8}
}
func (m *ReduplicateRepositoryRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ReduplicateRepositoryRequest.Unmarshal(m, b)
@@ -375,7 +375,7 @@ func (m *ReduplicateRepositoryResponse) Reset() { *m = ReduplicateReposi
func (m *ReduplicateRepositoryResponse) String() string { return proto.CompactTextString(m) }
func (*ReduplicateRepositoryResponse) ProtoMessage() {}
func (*ReduplicateRepositoryResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_objectpool_52b9473682df345b, []int{9}
+ return fileDescriptor_objectpool_9f08c40ea75d0855, []int{9}
}
func (m *ReduplicateRepositoryResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ReduplicateRepositoryResponse.Unmarshal(m, b)
@@ -395,6 +395,158 @@ func (m *ReduplicateRepositoryResponse) XXX_DiscardUnknown() {
var xxx_messageInfo_ReduplicateRepositoryResponse proto.InternalMessageInfo
+type DisconnectGitAlternatesRequest struct {
+ Repository *Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *DisconnectGitAlternatesRequest) Reset() { *m = DisconnectGitAlternatesRequest{} }
+func (m *DisconnectGitAlternatesRequest) String() string { return proto.CompactTextString(m) }
+func (*DisconnectGitAlternatesRequest) ProtoMessage() {}
+func (*DisconnectGitAlternatesRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_objectpool_9f08c40ea75d0855, []int{10}
+}
+func (m *DisconnectGitAlternatesRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_DisconnectGitAlternatesRequest.Unmarshal(m, b)
+}
+func (m *DisconnectGitAlternatesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_DisconnectGitAlternatesRequest.Marshal(b, m, deterministic)
+}
+func (dst *DisconnectGitAlternatesRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_DisconnectGitAlternatesRequest.Merge(dst, src)
+}
+func (m *DisconnectGitAlternatesRequest) XXX_Size() int {
+ return xxx_messageInfo_DisconnectGitAlternatesRequest.Size(m)
+}
+func (m *DisconnectGitAlternatesRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_DisconnectGitAlternatesRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_DisconnectGitAlternatesRequest proto.InternalMessageInfo
+
+func (m *DisconnectGitAlternatesRequest) GetRepository() *Repository {
+ if m != nil {
+ return m.Repository
+ }
+ return nil
+}
+
+type DisconnectGitAlternatesResponse struct {
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *DisconnectGitAlternatesResponse) Reset() { *m = DisconnectGitAlternatesResponse{} }
+func (m *DisconnectGitAlternatesResponse) String() string { return proto.CompactTextString(m) }
+func (*DisconnectGitAlternatesResponse) ProtoMessage() {}
+func (*DisconnectGitAlternatesResponse) Descriptor() ([]byte, []int) {
+ return fileDescriptor_objectpool_9f08c40ea75d0855, []int{11}
+}
+func (m *DisconnectGitAlternatesResponse) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_DisconnectGitAlternatesResponse.Unmarshal(m, b)
+}
+func (m *DisconnectGitAlternatesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_DisconnectGitAlternatesResponse.Marshal(b, m, deterministic)
+}
+func (dst *DisconnectGitAlternatesResponse) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_DisconnectGitAlternatesResponse.Merge(dst, src)
+}
+func (m *DisconnectGitAlternatesResponse) XXX_Size() int {
+ return xxx_messageInfo_DisconnectGitAlternatesResponse.Size(m)
+}
+func (m *DisconnectGitAlternatesResponse) XXX_DiscardUnknown() {
+ xxx_messageInfo_DisconnectGitAlternatesResponse.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_DisconnectGitAlternatesResponse proto.InternalMessageInfo
+
+type FetchIntoObjectPoolRequest struct {
+ Origin *Repository `protobuf:"bytes,1,opt,name=origin,proto3" json:"origin,omitempty"`
+ ObjectPool *ObjectPool `protobuf:"bytes,2,opt,name=object_pool,json=objectPool,proto3" json:"object_pool,omitempty"`
+ Repack bool `protobuf:"varint,3,opt,name=repack,proto3" json:"repack,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *FetchIntoObjectPoolRequest) Reset() { *m = FetchIntoObjectPoolRequest{} }
+func (m *FetchIntoObjectPoolRequest) String() string { return proto.CompactTextString(m) }
+func (*FetchIntoObjectPoolRequest) ProtoMessage() {}
+func (*FetchIntoObjectPoolRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_objectpool_9f08c40ea75d0855, []int{12}
+}
+func (m *FetchIntoObjectPoolRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_FetchIntoObjectPoolRequest.Unmarshal(m, b)
+}
+func (m *FetchIntoObjectPoolRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_FetchIntoObjectPoolRequest.Marshal(b, m, deterministic)
+}
+func (dst *FetchIntoObjectPoolRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_FetchIntoObjectPoolRequest.Merge(dst, src)
+}
+func (m *FetchIntoObjectPoolRequest) XXX_Size() int {
+ return xxx_messageInfo_FetchIntoObjectPoolRequest.Size(m)
+}
+func (m *FetchIntoObjectPoolRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_FetchIntoObjectPoolRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_FetchIntoObjectPoolRequest proto.InternalMessageInfo
+
+func (m *FetchIntoObjectPoolRequest) GetOrigin() *Repository {
+ if m != nil {
+ return m.Origin
+ }
+ return nil
+}
+
+func (m *FetchIntoObjectPoolRequest) GetObjectPool() *ObjectPool {
+ if m != nil {
+ return m.ObjectPool
+ }
+ return nil
+}
+
+func (m *FetchIntoObjectPoolRequest) GetRepack() bool {
+ if m != nil {
+ return m.Repack
+ }
+ return false
+}
+
+type FetchIntoObjectPoolResponse struct {
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *FetchIntoObjectPoolResponse) Reset() { *m = FetchIntoObjectPoolResponse{} }
+func (m *FetchIntoObjectPoolResponse) String() string { return proto.CompactTextString(m) }
+func (*FetchIntoObjectPoolResponse) ProtoMessage() {}
+func (*FetchIntoObjectPoolResponse) Descriptor() ([]byte, []int) {
+ return fileDescriptor_objectpool_9f08c40ea75d0855, []int{13}
+}
+func (m *FetchIntoObjectPoolResponse) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_FetchIntoObjectPoolResponse.Unmarshal(m, b)
+}
+func (m *FetchIntoObjectPoolResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_FetchIntoObjectPoolResponse.Marshal(b, m, deterministic)
+}
+func (dst *FetchIntoObjectPoolResponse) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_FetchIntoObjectPoolResponse.Merge(dst, src)
+}
+func (m *FetchIntoObjectPoolResponse) XXX_Size() int {
+ return xxx_messageInfo_FetchIntoObjectPoolResponse.Size(m)
+}
+func (m *FetchIntoObjectPoolResponse) XXX_DiscardUnknown() {
+ xxx_messageInfo_FetchIntoObjectPoolResponse.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_FetchIntoObjectPoolResponse proto.InternalMessageInfo
+
func init() {
proto.RegisterType((*CreateObjectPoolRequest)(nil), "gitaly.CreateObjectPoolRequest")
proto.RegisterType((*CreateObjectPoolResponse)(nil), "gitaly.CreateObjectPoolResponse")
@@ -406,6 +558,10 @@ func init() {
proto.RegisterType((*UnlinkRepositoryFromObjectPoolResponse)(nil), "gitaly.UnlinkRepositoryFromObjectPoolResponse")
proto.RegisterType((*ReduplicateRepositoryRequest)(nil), "gitaly.ReduplicateRepositoryRequest")
proto.RegisterType((*ReduplicateRepositoryResponse)(nil), "gitaly.ReduplicateRepositoryResponse")
+ proto.RegisterType((*DisconnectGitAlternatesRequest)(nil), "gitaly.DisconnectGitAlternatesRequest")
+ proto.RegisterType((*DisconnectGitAlternatesResponse)(nil), "gitaly.DisconnectGitAlternatesResponse")
+ proto.RegisterType((*FetchIntoObjectPoolRequest)(nil), "gitaly.FetchIntoObjectPoolRequest")
+ proto.RegisterType((*FetchIntoObjectPoolResponse)(nil), "gitaly.FetchIntoObjectPoolResponse")
}
// Reference imports to suppress errors if they are not otherwise used.
@@ -426,6 +582,8 @@ type ObjectPoolServiceClient interface {
LinkRepositoryToObjectPool(ctx context.Context, in *LinkRepositoryToObjectPoolRequest, opts ...grpc.CallOption) (*LinkRepositoryToObjectPoolResponse, error)
UnlinkRepositoryFromObjectPool(ctx context.Context, in *UnlinkRepositoryFromObjectPoolRequest, opts ...grpc.CallOption) (*UnlinkRepositoryFromObjectPoolResponse, error)
ReduplicateRepository(ctx context.Context, in *ReduplicateRepositoryRequest, opts ...grpc.CallOption) (*ReduplicateRepositoryResponse, error)
+ DisconnectGitAlternates(ctx context.Context, in *DisconnectGitAlternatesRequest, opts ...grpc.CallOption) (*DisconnectGitAlternatesResponse, error)
+ FetchIntoObjectPool(ctx context.Context, in *FetchIntoObjectPoolRequest, opts ...grpc.CallOption) (*FetchIntoObjectPoolResponse, error)
}
type objectPoolServiceClient struct {
@@ -481,6 +639,24 @@ func (c *objectPoolServiceClient) ReduplicateRepository(ctx context.Context, in
return out, nil
}
+func (c *objectPoolServiceClient) DisconnectGitAlternates(ctx context.Context, in *DisconnectGitAlternatesRequest, opts ...grpc.CallOption) (*DisconnectGitAlternatesResponse, error) {
+ out := new(DisconnectGitAlternatesResponse)
+ err := c.cc.Invoke(ctx, "/gitaly.ObjectPoolService/DisconnectGitAlternates", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *objectPoolServiceClient) FetchIntoObjectPool(ctx context.Context, in *FetchIntoObjectPoolRequest, opts ...grpc.CallOption) (*FetchIntoObjectPoolResponse, error) {
+ out := new(FetchIntoObjectPoolResponse)
+ err := c.cc.Invoke(ctx, "/gitaly.ObjectPoolService/FetchIntoObjectPool", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
// ObjectPoolServiceServer is the server API for ObjectPoolService service.
type ObjectPoolServiceServer interface {
CreateObjectPool(context.Context, *CreateObjectPoolRequest) (*CreateObjectPoolResponse, error)
@@ -489,6 +665,8 @@ type ObjectPoolServiceServer interface {
LinkRepositoryToObjectPool(context.Context, *LinkRepositoryToObjectPoolRequest) (*LinkRepositoryToObjectPoolResponse, error)
UnlinkRepositoryFromObjectPool(context.Context, *UnlinkRepositoryFromObjectPoolRequest) (*UnlinkRepositoryFromObjectPoolResponse, error)
ReduplicateRepository(context.Context, *ReduplicateRepositoryRequest) (*ReduplicateRepositoryResponse, error)
+ DisconnectGitAlternates(context.Context, *DisconnectGitAlternatesRequest) (*DisconnectGitAlternatesResponse, error)
+ FetchIntoObjectPool(context.Context, *FetchIntoObjectPoolRequest) (*FetchIntoObjectPoolResponse, error)
}
func RegisterObjectPoolServiceServer(s *grpc.Server, srv ObjectPoolServiceServer) {
@@ -585,6 +763,42 @@ func _ObjectPoolService_ReduplicateRepository_Handler(srv interface{}, ctx conte
return interceptor(ctx, in, info, handler)
}
+func _ObjectPoolService_DisconnectGitAlternates_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DisconnectGitAlternatesRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ObjectPoolServiceServer).DisconnectGitAlternates(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/gitaly.ObjectPoolService/DisconnectGitAlternates",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ObjectPoolServiceServer).DisconnectGitAlternates(ctx, req.(*DisconnectGitAlternatesRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ObjectPoolService_FetchIntoObjectPool_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(FetchIntoObjectPoolRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ObjectPoolServiceServer).FetchIntoObjectPool(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/gitaly.ObjectPoolService/FetchIntoObjectPool",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ObjectPoolServiceServer).FetchIntoObjectPool(ctx, req.(*FetchIntoObjectPoolRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
var _ObjectPoolService_serviceDesc = grpc.ServiceDesc{
ServiceName: "gitaly.ObjectPoolService",
HandlerType: (*ObjectPoolServiceServer)(nil),
@@ -609,39 +823,54 @@ var _ObjectPoolService_serviceDesc = grpc.ServiceDesc{
MethodName: "ReduplicateRepository",
Handler: _ObjectPoolService_ReduplicateRepository_Handler,
},
+ {
+ MethodName: "DisconnectGitAlternates",
+ Handler: _ObjectPoolService_DisconnectGitAlternates_Handler,
+ },
+ {
+ MethodName: "FetchIntoObjectPool",
+ Handler: _ObjectPoolService_FetchIntoObjectPool_Handler,
+ },
},
Streams: []grpc.StreamDesc{},
Metadata: "objectpool.proto",
}
-func init() { proto.RegisterFile("objectpool.proto", fileDescriptor_objectpool_52b9473682df345b) }
-
-var fileDescriptor_objectpool_52b9473682df345b = []byte{
- // 415 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x94, 0xcd, 0x4e, 0xfa, 0x40,
- 0x14, 0xc5, 0x19, 0xf2, 0x4f, 0xf3, 0xcf, 0xc5, 0x05, 0x4e, 0x62, 0x20, 0x8d, 0x0a, 0x36, 0x60,
- 0x90, 0x84, 0x62, 0x60, 0xe7, 0x52, 0x8d, 0x2b, 0x13, 0x4d, 0xfd, 0x4a, 0xd8, 0x98, 0xb6, 0x8c,
- 0xb5, 0x5a, 0x7a, 0xeb, 0xb4, 0x98, 0xb0, 0xd4, 0x67, 0x30, 0xd1, 0x47, 0xf0, 0xf9, 0x7c, 0x02,
- 0x03, 0xfd, 0x04, 0x2c, 0x54, 0xc3, 0x6e, 0x98, 0x9c, 0x39, 0xe7, 0x77, 0x67, 0x0e, 0x85, 0x22,
- 0x6a, 0x0f, 0x4c, 0xf7, 0x1c, 0x44, 0x4b, 0x76, 0x38, 0x7a, 0x48, 0x05, 0xc3, 0xf4, 0x54, 0x6b,
- 0x24, 0xae, 0xb9, 0xf7, 0x2a, 0x67, 0x7d, 0x7f, 0x57, 0x7a, 0x25, 0x50, 0x3a, 0xe2, 0x4c, 0xf5,
- 0xd8, 0xd9, 0xe4, 0xc0, 0x39, 0xa2, 0xa5, 0xb0, 0xa7, 0x21, 0x73, 0x3d, 0xda, 0x85, 0x82, 0xef,
- 0x72, 0x3b, 0xb6, 0x29, 0x93, 0x2a, 0x69, 0x14, 0x3a, 0x54, 0xf6, 0x7d, 0xe4, 0x84, 0x1e, 0x30,
- 0x5a, 0xd3, 0x26, 0x08, 0xc8, 0x4d, 0xc3, 0xb4, 0xcb, 0xf9, 0x69, 0xbd, 0xc2, 0x1c, 0x74, 0x4d,
- 0x0f, 0xf9, 0x48, 0x09, 0x14, 0x07, 0xc2, 0xd7, 0x7b, 0x23, 0xff, 0x9f, 0x48, 0x22, 0x94, 0xe7,
- 0x19, 0x5c, 0x07, 0x6d, 0x97, 0x49, 0xd7, 0x50, 0x3a, 0x66, 0x16, 0x5b, 0x15, 0x5f, 0x32, 0x73,
- 0xde, 0x37, 0xc8, 0x7c, 0x23, 0xb0, 0x73, 0x6a, 0xda, 0x8f, 0x31, 0xf2, 0x25, 0xae, 0xe8, 0x7a,
- 0x3a, 0x00, 0x3c, 0x72, 0x5d, 0x70, 0x45, 0x09, 0x55, 0x84, 0x5c, 0x03, 0x69, 0x11, 0x55, 0x00,
- 0xff, 0x41, 0xa0, 0x7e, 0x65, 0x5b, 0x53, 0xc2, 0x13, 0x8e, 0x83, 0xf9, 0x01, 0xa6, 0x59, 0x48,
- 0x16, 0x96, 0xd9, 0xa1, 0xf3, 0xbf, 0xba, 0xf3, 0x06, 0xec, 0x2e, 0x23, 0x0b, 0x86, 0xe8, 0xc1,
- 0xa6, 0xc2, 0xfa, 0x43, 0xc7, 0x32, 0x75, 0xd5, 0x63, 0x09, 0x96, 0xbf, 0xa3, 0x47, 0x14, 0x15,
- 0xd8, 0x4a, 0xf1, 0xf6, 0xc3, 0x3b, 0x9f, 0xff, 0x60, 0x3d, 0x66, 0xba, 0x60, 0xfc, 0xd9, 0xd4,
- 0x19, 0xbd, 0x81, 0xe2, 0x6c, 0x49, 0x69, 0x25, 0x8c, 0x4c, 0xf9, 0x0b, 0x89, 0xd5, 0x74, 0x41,
- 0x30, 0x69, 0x6e, 0x6c, 0x3c, 0xdb, 0xc4, 0xd8, 0x38, 0xa5, 0xfb, 0xb1, 0x71, 0x6a, 0x89, 0x73,
- 0x74, 0x08, 0x62, 0x7a, 0x5f, 0xe8, 0x5e, 0xe8, 0xb0, 0xb4, 0xe9, 0x62, 0x33, 0x8b, 0x34, 0x8a,
- 0x7d, 0x21, 0xb0, 0xbd, 0xf8, 0x99, 0x69, 0x2b, 0x34, 0xcc, 0x54, 0x54, 0x51, 0xce, 0x2a, 0x8f,
- 0x18, 0xee, 0x60, 0xe3, 0xc7, 0x37, 0xa6, 0xb5, 0xb8, 0x24, 0xe9, 0xf5, 0x12, 0xeb, 0x4b, 0x54,
- 0x61, 0xce, 0xe1, 0x7e, 0x6f, 0xac, 0xb4, 0x54, 0x4d, 0xd6, 0x71, 0xd0, 0xf6, 0x97, 0x2d, 0xe4,
- 0x46, 0xdb, 0x3f, 0xdf, 0x9a, 0x7c, 0x64, 0xdb, 0x06, 0x06, 0xbf, 0x1d, 0x4d, 0x13, 0x26, 0x5b,
- 0xdd, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, 0x8b, 0xa8, 0x1d, 0x02, 0xa1, 0x05, 0x00, 0x00,
+func init() { proto.RegisterFile("objectpool.proto", fileDescriptor_objectpool_9f08c40ea75d0855) }
+
+var fileDescriptor_objectpool_9f08c40ea75d0855 = []byte{
+ // 520 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x95, 0xc1, 0x6f, 0xd3, 0x30,
+ 0x14, 0xc6, 0xe5, 0x22, 0x45, 0xd3, 0x1b, 0x87, 0x61, 0x04, 0xad, 0x0c, 0x5b, 0xbb, 0xb0, 0x8d,
+ 0x32, 0xa9, 0x29, 0xea, 0xfe, 0x02, 0x60, 0x1a, 0x42, 0x42, 0x80, 0xc2, 0xb8, 0x20, 0x21, 0x94,
+ 0x66, 0x8f, 0x2e, 0x2c, 0xcb, 0x0b, 0x8e, 0x87, 0x34, 0xf8, 0x03, 0xb8, 0x70, 0xe0, 0x82, 0xb8,
+ 0xf3, 0x67, 0x72, 0x42, 0x6d, 0x9c, 0xa6, 0x4d, 0xeb, 0x24, 0xda, 0x7a, 0x8b, 0xad, 0x4f, 0xdf,
+ 0xf7, 0xeb, 0xb3, 0x3f, 0x17, 0x36, 0x68, 0xf8, 0x19, 0x7d, 0x15, 0x13, 0x85, 0x4e, 0x2c, 0x49,
+ 0x11, 0xb7, 0x46, 0x81, 0xf2, 0xc2, 0x4b, 0x71, 0x33, 0x39, 0xf5, 0x24, 0x9e, 0xa4, 0xbb, 0xf6,
+ 0x37, 0x68, 0x3e, 0x93, 0xe8, 0x29, 0x7c, 0x3d, 0xd1, 0xbf, 0x21, 0x0a, 0x5d, 0xfc, 0x72, 0x81,
+ 0x89, 0xe2, 0x07, 0xb0, 0x9e, 0x9a, 0x7c, 0x1c, 0xbb, 0xb4, 0x58, 0x87, 0x75, 0xd7, 0x07, 0xdc,
+ 0x49, 0x6d, 0x9c, 0x19, 0x3d, 0xd0, 0xf4, 0x9b, 0xef, 0x83, 0x45, 0x32, 0x18, 0x05, 0x51, 0xab,
+ 0x31, 0xaf, 0x77, 0x31, 0xa6, 0x24, 0x50, 0x24, 0x2f, 0x5d, 0xad, 0xb0, 0x05, 0xb4, 0x16, 0xb3,
+ 0x93, 0x98, 0xa2, 0x04, 0xed, 0x57, 0xd0, 0x3c, 0xc4, 0x10, 0x57, 0xc5, 0x35, 0xce, 0x5a, 0xf4,
+ 0xd3, 0x59, 0x3f, 0x19, 0x6c, 0xbf, 0x0c, 0xa2, 0xb3, 0x1c, 0xf1, 0x98, 0x56, 0x34, 0x8e, 0x01,
+ 0x80, 0x9c, 0xba, 0x96, 0x8c, 0x64, 0x46, 0x65, 0xef, 0x80, 0x5d, 0x46, 0xa3, 0xa1, 0x7f, 0x31,
+ 0xd8, 0x7d, 0x17, 0x85, 0x73, 0xc2, 0x23, 0x49, 0xe7, 0x8b, 0xe0, 0xf3, 0x0c, 0xac, 0x0e, 0x43,
+ 0xf1, 0xc7, 0x36, 0x6a, 0xcd, 0xb8, 0x0b, 0x7b, 0x55, 0x44, 0x1a, 0xde, 0x85, 0xfb, 0x2e, 0x9e,
+ 0x5c, 0xc4, 0x61, 0xe0, 0x7b, 0x0a, 0x67, 0x18, 0xae, 0x8e, 0x6c, 0xb7, 0x61, 0xd3, 0xe0, 0xa9,
+ 0x43, 0x8f, 0x61, 0xeb, 0x30, 0x48, 0x7c, 0x8a, 0x22, 0xf4, 0xd5, 0xf3, 0x40, 0x3d, 0x09, 0x15,
+ 0xca, 0xc8, 0x53, 0x98, 0x5c, 0x27, 0x76, 0x1b, 0xda, 0x46, 0x57, 0x1d, 0xfc, 0x9b, 0x81, 0x38,
+ 0x42, 0xe5, 0x9f, 0xbe, 0x88, 0xd4, 0x92, 0x8b, 0x95, 0x57, 0x86, 0x55, 0x55, 0xe6, 0x4a, 0xe7,
+ 0xc2, 0xef, 0x82, 0x25, 0x31, 0xf6, 0xfc, 0xb3, 0xd6, 0x8d, 0x0e, 0xeb, 0xae, 0xb9, 0x7a, 0x65,
+ 0x6f, 0xc2, 0xbd, 0xa5, 0x58, 0x29, 0xf6, 0xe0, 0xaf, 0x05, 0xb7, 0xf2, 0xed, 0xb7, 0x28, 0xbf,
+ 0x06, 0x3e, 0xf2, 0x0f, 0xb0, 0x51, 0x2c, 0x2d, 0x6f, 0x67, 0x00, 0x86, 0xa7, 0x44, 0x74, 0xcc,
+ 0x02, 0x3d, 0x23, 0xeb, 0xdf, 0x9f, 0x6e, 0x63, 0x8d, 0x8d, 0xed, 0x8b, 0x3d, 0xcd, 0xed, 0x0d,
+ 0x2f, 0x42, 0x6e, 0x6f, 0xac, 0x78, 0x66, 0xff, 0x1d, 0x84, 0xb9, 0x5b, 0xfc, 0x51, 0xe6, 0x53,
+ 0xf9, 0x1a, 0x88, 0xfd, 0x3a, 0xd2, 0x42, 0xf8, 0x0f, 0x06, 0x5b, 0xe5, 0x05, 0xe1, 0xbd, 0xcc,
+ 0xb6, 0x56, 0xb5, 0x85, 0x53, 0x57, 0x5e, 0x20, 0x09, 0xe1, 0xce, 0xd2, 0xae, 0xf0, 0x9d, 0xfc,
+ 0xee, 0x99, 0xeb, 0x29, 0x76, 0x2b, 0x54, 0x85, 0x34, 0x09, 0x4d, 0x43, 0x45, 0xf8, 0xde, 0xf4,
+ 0xe4, 0x4a, 0x9b, 0x29, 0x1e, 0x56, 0xea, 0x0a, 0x99, 0x9f, 0xe0, 0xf6, 0x92, 0xbb, 0xcd, 0xed,
+ 0xcc, 0xc7, 0xdc, 0x47, 0xf1, 0xa0, 0x54, 0x33, 0x9f, 0xf3, 0xf4, 0xf1, 0xfb, 0xb1, 0x3a, 0xf4,
+ 0x86, 0x8e, 0x4f, 0xe7, 0xfd, 0xf4, 0xb3, 0x47, 0x72, 0xd4, 0x4f, 0x3d, 0x7a, 0x93, 0x7f, 0xd9,
+ 0xfe, 0x88, 0xf4, 0x3a, 0x1e, 0x0e, 0xad, 0xc9, 0xd6, 0xc1, 0xff, 0x00, 0x00, 0x00, 0xff, 0xff,
+ 0x31, 0x3d, 0xeb, 0x4f, 0xa2, 0x07, 0x00, 0x00,
}
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/operations.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/operations.pb.go
index be561decc..e5cfe0f68 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/operations.pb.go
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/operations.pb.go
@@ -55,7 +55,7 @@ func (x UserCommitFilesActionHeader_ActionType) String() string {
return proto.EnumName(UserCommitFilesActionHeader_ActionType_name, int32(x))
}
func (UserCommitFilesActionHeader_ActionType) EnumDescriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{21, 0}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{21, 0}
}
type UserCreateBranchRequest struct {
@@ -72,7 +72,7 @@ func (m *UserCreateBranchRequest) Reset() { *m = UserCreateBranchRequest
func (m *UserCreateBranchRequest) String() string { return proto.CompactTextString(m) }
func (*UserCreateBranchRequest) ProtoMessage() {}
func (*UserCreateBranchRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{0}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{0}
}
func (m *UserCreateBranchRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserCreateBranchRequest.Unmarshal(m, b)
@@ -134,7 +134,7 @@ func (m *UserCreateBranchResponse) Reset() { *m = UserCreateBranchRespon
func (m *UserCreateBranchResponse) String() string { return proto.CompactTextString(m) }
func (*UserCreateBranchResponse) ProtoMessage() {}
func (*UserCreateBranchResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{1}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{1}
}
func (m *UserCreateBranchResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserCreateBranchResponse.Unmarshal(m, b)
@@ -183,7 +183,7 @@ func (m *UserUpdateBranchRequest) Reset() { *m = UserUpdateBranchRequest
func (m *UserUpdateBranchRequest) String() string { return proto.CompactTextString(m) }
func (*UserUpdateBranchRequest) ProtoMessage() {}
func (*UserUpdateBranchRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{2}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{2}
}
func (m *UserUpdateBranchRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserUpdateBranchRequest.Unmarshal(m, b)
@@ -249,7 +249,7 @@ func (m *UserUpdateBranchResponse) Reset() { *m = UserUpdateBranchRespon
func (m *UserUpdateBranchResponse) String() string { return proto.CompactTextString(m) }
func (*UserUpdateBranchResponse) ProtoMessage() {}
func (*UserUpdateBranchResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{3}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{3}
}
func (m *UserUpdateBranchResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserUpdateBranchResponse.Unmarshal(m, b)
@@ -289,7 +289,7 @@ func (m *UserDeleteBranchRequest) Reset() { *m = UserDeleteBranchRequest
func (m *UserDeleteBranchRequest) String() string { return proto.CompactTextString(m) }
func (*UserDeleteBranchRequest) ProtoMessage() {}
func (*UserDeleteBranchRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{4}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{4}
}
func (m *UserDeleteBranchRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserDeleteBranchRequest.Unmarshal(m, b)
@@ -341,7 +341,7 @@ func (m *UserDeleteBranchResponse) Reset() { *m = UserDeleteBranchRespon
func (m *UserDeleteBranchResponse) String() string { return proto.CompactTextString(m) }
func (*UserDeleteBranchResponse) ProtoMessage() {}
func (*UserDeleteBranchResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{5}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{5}
}
func (m *UserDeleteBranchResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserDeleteBranchResponse.Unmarshal(m, b)
@@ -381,7 +381,7 @@ func (m *UserDeleteTagRequest) Reset() { *m = UserDeleteTagRequest{} }
func (m *UserDeleteTagRequest) String() string { return proto.CompactTextString(m) }
func (*UserDeleteTagRequest) ProtoMessage() {}
func (*UserDeleteTagRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{6}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{6}
}
func (m *UserDeleteTagRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserDeleteTagRequest.Unmarshal(m, b)
@@ -433,7 +433,7 @@ func (m *UserDeleteTagResponse) Reset() { *m = UserDeleteTagResponse{} }
func (m *UserDeleteTagResponse) String() string { return proto.CompactTextString(m) }
func (*UserDeleteTagResponse) ProtoMessage() {}
func (*UserDeleteTagResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{7}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{7}
}
func (m *UserDeleteTagResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserDeleteTagResponse.Unmarshal(m, b)
@@ -475,7 +475,7 @@ func (m *UserCreateTagRequest) Reset() { *m = UserCreateTagRequest{} }
func (m *UserCreateTagRequest) String() string { return proto.CompactTextString(m) }
func (*UserCreateTagRequest) ProtoMessage() {}
func (*UserCreateTagRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{8}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{8}
}
func (m *UserCreateTagRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserCreateTagRequest.Unmarshal(m, b)
@@ -543,7 +543,7 @@ func (m *UserCreateTagResponse) Reset() { *m = UserCreateTagResponse{} }
func (m *UserCreateTagResponse) String() string { return proto.CompactTextString(m) }
func (*UserCreateTagResponse) ProtoMessage() {}
func (*UserCreateTagResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{9}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{9}
}
func (m *UserCreateTagResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserCreateTagResponse.Unmarshal(m, b)
@@ -603,7 +603,7 @@ func (m *UserMergeBranchRequest) Reset() { *m = UserMergeBranchRequest{}
func (m *UserMergeBranchRequest) String() string { return proto.CompactTextString(m) }
func (*UserMergeBranchRequest) ProtoMessage() {}
func (*UserMergeBranchRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{10}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{10}
}
func (m *UserMergeBranchRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserMergeBranchRequest.Unmarshal(m, b)
@@ -682,7 +682,7 @@ func (m *UserMergeBranchResponse) Reset() { *m = UserMergeBranchResponse
func (m *UserMergeBranchResponse) String() string { return proto.CompactTextString(m) }
func (*UserMergeBranchResponse) ProtoMessage() {}
func (*UserMergeBranchResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{11}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{11}
}
func (m *UserMergeBranchResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserMergeBranchResponse.Unmarshal(m, b)
@@ -745,7 +745,7 @@ func (m *UserMergeToRefRequest) Reset() { *m = UserMergeToRefRequest{} }
func (m *UserMergeToRefRequest) String() string { return proto.CompactTextString(m) }
func (*UserMergeToRefRequest) ProtoMessage() {}
func (*UserMergeToRefRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{12}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{12}
}
func (m *UserMergeToRefRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserMergeToRefRequest.Unmarshal(m, b)
@@ -819,7 +819,7 @@ func (m *UserMergeToRefResponse) Reset() { *m = UserMergeToRefResponse{}
func (m *UserMergeToRefResponse) String() string { return proto.CompactTextString(m) }
func (*UserMergeToRefResponse) ProtoMessage() {}
func (*UserMergeToRefResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{13}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{13}
}
func (m *UserMergeToRefResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserMergeToRefResponse.Unmarshal(m, b)
@@ -869,7 +869,7 @@ func (m *OperationBranchUpdate) Reset() { *m = OperationBranchUpdate{} }
func (m *OperationBranchUpdate) String() string { return proto.CompactTextString(m) }
func (*OperationBranchUpdate) ProtoMessage() {}
func (*OperationBranchUpdate) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{14}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{14}
}
func (m *OperationBranchUpdate) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_OperationBranchUpdate.Unmarshal(m, b)
@@ -924,7 +924,7 @@ func (m *UserFFBranchRequest) Reset() { *m = UserFFBranchRequest{} }
func (m *UserFFBranchRequest) String() string { return proto.CompactTextString(m) }
func (*UserFFBranchRequest) ProtoMessage() {}
func (*UserFFBranchRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{15}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{15}
}
func (m *UserFFBranchRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserFFBranchRequest.Unmarshal(m, b)
@@ -984,7 +984,7 @@ func (m *UserFFBranchResponse) Reset() { *m = UserFFBranchResponse{} }
func (m *UserFFBranchResponse) String() string { return proto.CompactTextString(m) }
func (*UserFFBranchResponse) ProtoMessage() {}
func (*UserFFBranchResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{16}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{16}
}
func (m *UserFFBranchResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserFFBranchResponse.Unmarshal(m, b)
@@ -1035,7 +1035,7 @@ func (m *UserCherryPickRequest) Reset() { *m = UserCherryPickRequest{} }
func (m *UserCherryPickRequest) String() string { return proto.CompactTextString(m) }
func (*UserCherryPickRequest) ProtoMessage() {}
func (*UserCherryPickRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{17}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{17}
}
func (m *UserCherryPickRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserCherryPickRequest.Unmarshal(m, b)
@@ -1118,7 +1118,7 @@ func (m *UserCherryPickResponse) Reset() { *m = UserCherryPickResponse{}
func (m *UserCherryPickResponse) String() string { return proto.CompactTextString(m) }
func (*UserCherryPickResponse) ProtoMessage() {}
func (*UserCherryPickResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{18}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{18}
}
func (m *UserCherryPickResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserCherryPickResponse.Unmarshal(m, b)
@@ -1183,7 +1183,7 @@ func (m *UserRevertRequest) Reset() { *m = UserRevertRequest{} }
func (m *UserRevertRequest) String() string { return proto.CompactTextString(m) }
func (*UserRevertRequest) ProtoMessage() {}
func (*UserRevertRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{19}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{19}
}
func (m *UserRevertRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserRevertRequest.Unmarshal(m, b)
@@ -1266,7 +1266,7 @@ func (m *UserRevertResponse) Reset() { *m = UserRevertResponse{} }
func (m *UserRevertResponse) String() string { return proto.CompactTextString(m) }
func (*UserRevertResponse) ProtoMessage() {}
func (*UserRevertResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{20}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{20}
}
func (m *UserRevertResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserRevertResponse.Unmarshal(m, b)
@@ -1333,7 +1333,7 @@ func (m *UserCommitFilesActionHeader) Reset() { *m = UserCommitFilesActi
func (m *UserCommitFilesActionHeader) String() string { return proto.CompactTextString(m) }
func (*UserCommitFilesActionHeader) ProtoMessage() {}
func (*UserCommitFilesActionHeader) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{21}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{21}
}
func (m *UserCommitFilesActionHeader) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserCommitFilesActionHeader.Unmarshal(m, b)
@@ -1409,7 +1409,7 @@ func (m *UserCommitFilesAction) Reset() { *m = UserCommitFilesAction{} }
func (m *UserCommitFilesAction) String() string { return proto.CompactTextString(m) }
func (*UserCommitFilesAction) ProtoMessage() {}
func (*UserCommitFilesAction) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{22}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{22}
}
func (m *UserCommitFilesAction) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserCommitFilesAction.Unmarshal(m, b)
@@ -1555,7 +1555,7 @@ func (m *UserCommitFilesRequestHeader) Reset() { *m = UserCommitFilesReq
func (m *UserCommitFilesRequestHeader) String() string { return proto.CompactTextString(m) }
func (*UserCommitFilesRequestHeader) ProtoMessage() {}
func (*UserCommitFilesRequestHeader) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{23}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{23}
}
func (m *UserCommitFilesRequestHeader) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserCommitFilesRequestHeader.Unmarshal(m, b)
@@ -1652,7 +1652,7 @@ func (m *UserCommitFilesRequest) Reset() { *m = UserCommitFilesRequest{}
func (m *UserCommitFilesRequest) String() string { return proto.CompactTextString(m) }
func (*UserCommitFilesRequest) ProtoMessage() {}
func (*UserCommitFilesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{24}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{24}
}
func (m *UserCommitFilesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserCommitFilesRequest.Unmarshal(m, b)
@@ -1796,7 +1796,7 @@ func (m *UserCommitFilesResponse) Reset() { *m = UserCommitFilesResponse
func (m *UserCommitFilesResponse) String() string { return proto.CompactTextString(m) }
func (*UserCommitFilesResponse) ProtoMessage() {}
func (*UserCommitFilesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{25}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{25}
}
func (m *UserCommitFilesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserCommitFilesResponse.Unmarshal(m, b)
@@ -1837,6 +1837,9 @@ func (m *UserCommitFilesResponse) GetPreReceiveError() string {
return ""
}
+// DEPRECATED: https://gitlab.com/gitlab-org/gitaly/issues/1628
+//
+// Deprecated: Do not use.
type UserRebaseRequest struct {
Repository *Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"`
User *User `protobuf:"bytes,2,opt,name=user,proto3" json:"user,omitempty"`
@@ -1854,7 +1857,7 @@ func (m *UserRebaseRequest) Reset() { *m = UserRebaseRequest{} }
func (m *UserRebaseRequest) String() string { return proto.CompactTextString(m) }
func (*UserRebaseRequest) ProtoMessage() {}
func (*UserRebaseRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{26}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{26}
}
func (m *UserRebaseRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserRebaseRequest.Unmarshal(m, b)
@@ -1923,6 +1926,9 @@ func (m *UserRebaseRequest) GetRemoteBranch() []byte {
return nil
}
+// DEPRECATED: https://gitlab.com/gitlab-org/gitaly/issues/1628
+//
+// Deprecated: Do not use.
type UserRebaseResponse struct {
RebaseSha string `protobuf:"bytes,1,opt,name=rebase_sha,json=rebaseSha,proto3" json:"rebase_sha,omitempty"`
PreReceiveError string `protobuf:"bytes,2,opt,name=pre_receive_error,json=preReceiveError,proto3" json:"pre_receive_error,omitempty"`
@@ -1936,7 +1942,7 @@ func (m *UserRebaseResponse) Reset() { *m = UserRebaseResponse{} }
func (m *UserRebaseResponse) String() string { return proto.CompactTextString(m) }
func (*UserRebaseResponse) ProtoMessage() {}
func (*UserRebaseResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{27}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{27}
}
func (m *UserRebaseResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserRebaseResponse.Unmarshal(m, b)
@@ -1977,6 +1983,396 @@ func (m *UserRebaseResponse) GetGitError() string {
return ""
}
+type UserRebaseConfirmableRequest struct {
+ // Types that are valid to be assigned to UserRebaseConfirmableRequestPayload:
+ // *UserRebaseConfirmableRequest_Header_
+ // *UserRebaseConfirmableRequest_Apply
+ UserRebaseConfirmableRequestPayload isUserRebaseConfirmableRequest_UserRebaseConfirmableRequestPayload `protobuf_oneof:"user_rebase_confirmable_request_payload"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *UserRebaseConfirmableRequest) Reset() { *m = UserRebaseConfirmableRequest{} }
+func (m *UserRebaseConfirmableRequest) String() string { return proto.CompactTextString(m) }
+func (*UserRebaseConfirmableRequest) ProtoMessage() {}
+func (*UserRebaseConfirmableRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{28}
+}
+func (m *UserRebaseConfirmableRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_UserRebaseConfirmableRequest.Unmarshal(m, b)
+}
+func (m *UserRebaseConfirmableRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_UserRebaseConfirmableRequest.Marshal(b, m, deterministic)
+}
+func (dst *UserRebaseConfirmableRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_UserRebaseConfirmableRequest.Merge(dst, src)
+}
+func (m *UserRebaseConfirmableRequest) XXX_Size() int {
+ return xxx_messageInfo_UserRebaseConfirmableRequest.Size(m)
+}
+func (m *UserRebaseConfirmableRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_UserRebaseConfirmableRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_UserRebaseConfirmableRequest proto.InternalMessageInfo
+
+type isUserRebaseConfirmableRequest_UserRebaseConfirmableRequestPayload interface {
+ isUserRebaseConfirmableRequest_UserRebaseConfirmableRequestPayload()
+}
+
+type UserRebaseConfirmableRequest_Header_ struct {
+ Header *UserRebaseConfirmableRequest_Header `protobuf:"bytes,1,opt,name=header,proto3,oneof"`
+}
+
+type UserRebaseConfirmableRequest_Apply struct {
+ Apply bool `protobuf:"varint,2,opt,name=apply,proto3,oneof"`
+}
+
+func (*UserRebaseConfirmableRequest_Header_) isUserRebaseConfirmableRequest_UserRebaseConfirmableRequestPayload() {
+}
+
+func (*UserRebaseConfirmableRequest_Apply) isUserRebaseConfirmableRequest_UserRebaseConfirmableRequestPayload() {
+}
+
+func (m *UserRebaseConfirmableRequest) GetUserRebaseConfirmableRequestPayload() isUserRebaseConfirmableRequest_UserRebaseConfirmableRequestPayload {
+ if m != nil {
+ return m.UserRebaseConfirmableRequestPayload
+ }
+ return nil
+}
+
+func (m *UserRebaseConfirmableRequest) GetHeader() *UserRebaseConfirmableRequest_Header {
+ if x, ok := m.GetUserRebaseConfirmableRequestPayload().(*UserRebaseConfirmableRequest_Header_); ok {
+ return x.Header
+ }
+ return nil
+}
+
+func (m *UserRebaseConfirmableRequest) GetApply() bool {
+ if x, ok := m.GetUserRebaseConfirmableRequestPayload().(*UserRebaseConfirmableRequest_Apply); ok {
+ return x.Apply
+ }
+ return false
+}
+
+// XXX_OneofFuncs is for the internal use of the proto package.
+func (*UserRebaseConfirmableRequest) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
+ return _UserRebaseConfirmableRequest_OneofMarshaler, _UserRebaseConfirmableRequest_OneofUnmarshaler, _UserRebaseConfirmableRequest_OneofSizer, []interface{}{
+ (*UserRebaseConfirmableRequest_Header_)(nil),
+ (*UserRebaseConfirmableRequest_Apply)(nil),
+ }
+}
+
+func _UserRebaseConfirmableRequest_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
+ m := msg.(*UserRebaseConfirmableRequest)
+ // user_rebase_confirmable_request_payload
+ switch x := m.UserRebaseConfirmableRequestPayload.(type) {
+ case *UserRebaseConfirmableRequest_Header_:
+ b.EncodeVarint(1<<3 | proto.WireBytes)
+ if err := b.EncodeMessage(x.Header); err != nil {
+ return err
+ }
+ case *UserRebaseConfirmableRequest_Apply:
+ t := uint64(0)
+ if x.Apply {
+ t = 1
+ }
+ b.EncodeVarint(2<<3 | proto.WireVarint)
+ b.EncodeVarint(t)
+ case nil:
+ default:
+ return fmt.Errorf("UserRebaseConfirmableRequest.UserRebaseConfirmableRequestPayload has unexpected type %T", x)
+ }
+ return nil
+}
+
+func _UserRebaseConfirmableRequest_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
+ m := msg.(*UserRebaseConfirmableRequest)
+ switch tag {
+ case 1: // user_rebase_confirmable_request_payload.header
+ if wire != proto.WireBytes {
+ return true, proto.ErrInternalBadWireType
+ }
+ msg := new(UserRebaseConfirmableRequest_Header)
+ err := b.DecodeMessage(msg)
+ m.UserRebaseConfirmableRequestPayload = &UserRebaseConfirmableRequest_Header_{msg}
+ return true, err
+ case 2: // user_rebase_confirmable_request_payload.apply
+ if wire != proto.WireVarint {
+ return true, proto.ErrInternalBadWireType
+ }
+ x, err := b.DecodeVarint()
+ m.UserRebaseConfirmableRequestPayload = &UserRebaseConfirmableRequest_Apply{x != 0}
+ return true, err
+ default:
+ return false, nil
+ }
+}
+
+func _UserRebaseConfirmableRequest_OneofSizer(msg proto.Message) (n int) {
+ m := msg.(*UserRebaseConfirmableRequest)
+ // user_rebase_confirmable_request_payload
+ switch x := m.UserRebaseConfirmableRequestPayload.(type) {
+ case *UserRebaseConfirmableRequest_Header_:
+ s := proto.Size(x.Header)
+ n += 1 // tag and wire
+ n += proto.SizeVarint(uint64(s))
+ n += s
+ case *UserRebaseConfirmableRequest_Apply:
+ n += 1 // tag and wire
+ n += 1
+ case nil:
+ default:
+ panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
+ }
+ return n
+}
+
+type UserRebaseConfirmableRequest_Header struct {
+ Repository *Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"`
+ User *User `protobuf:"bytes,2,opt,name=user,proto3" json:"user,omitempty"`
+ RebaseId string `protobuf:"bytes,3,opt,name=rebase_id,json=rebaseId,proto3" json:"rebase_id,omitempty"`
+ Branch []byte `protobuf:"bytes,4,opt,name=branch,proto3" json:"branch,omitempty"`
+ BranchSha string `protobuf:"bytes,5,opt,name=branch_sha,json=branchSha,proto3" json:"branch_sha,omitempty"`
+ RemoteRepository *Repository `protobuf:"bytes,6,opt,name=remote_repository,json=remoteRepository,proto3" json:"remote_repository,omitempty"`
+ RemoteBranch []byte `protobuf:"bytes,7,opt,name=remote_branch,json=remoteBranch,proto3" json:"remote_branch,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *UserRebaseConfirmableRequest_Header) Reset() { *m = UserRebaseConfirmableRequest_Header{} }
+func (m *UserRebaseConfirmableRequest_Header) String() string { return proto.CompactTextString(m) }
+func (*UserRebaseConfirmableRequest_Header) ProtoMessage() {}
+func (*UserRebaseConfirmableRequest_Header) Descriptor() ([]byte, []int) {
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{28, 0}
+}
+func (m *UserRebaseConfirmableRequest_Header) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_UserRebaseConfirmableRequest_Header.Unmarshal(m, b)
+}
+func (m *UserRebaseConfirmableRequest_Header) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_UserRebaseConfirmableRequest_Header.Marshal(b, m, deterministic)
+}
+func (dst *UserRebaseConfirmableRequest_Header) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_UserRebaseConfirmableRequest_Header.Merge(dst, src)
+}
+func (m *UserRebaseConfirmableRequest_Header) XXX_Size() int {
+ return xxx_messageInfo_UserRebaseConfirmableRequest_Header.Size(m)
+}
+func (m *UserRebaseConfirmableRequest_Header) XXX_DiscardUnknown() {
+ xxx_messageInfo_UserRebaseConfirmableRequest_Header.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_UserRebaseConfirmableRequest_Header proto.InternalMessageInfo
+
+func (m *UserRebaseConfirmableRequest_Header) GetRepository() *Repository {
+ if m != nil {
+ return m.Repository
+ }
+ return nil
+}
+
+func (m *UserRebaseConfirmableRequest_Header) GetUser() *User {
+ if m != nil {
+ return m.User
+ }
+ return nil
+}
+
+func (m *UserRebaseConfirmableRequest_Header) GetRebaseId() string {
+ if m != nil {
+ return m.RebaseId
+ }
+ return ""
+}
+
+func (m *UserRebaseConfirmableRequest_Header) GetBranch() []byte {
+ if m != nil {
+ return m.Branch
+ }
+ return nil
+}
+
+func (m *UserRebaseConfirmableRequest_Header) GetBranchSha() string {
+ if m != nil {
+ return m.BranchSha
+ }
+ return ""
+}
+
+func (m *UserRebaseConfirmableRequest_Header) GetRemoteRepository() *Repository {
+ if m != nil {
+ return m.RemoteRepository
+ }
+ return nil
+}
+
+func (m *UserRebaseConfirmableRequest_Header) GetRemoteBranch() []byte {
+ if m != nil {
+ return m.RemoteBranch
+ }
+ return nil
+}
+
+type UserRebaseConfirmableResponse struct {
+ // Types that are valid to be assigned to UserRebaseConfirmableResponsePayload:
+ // *UserRebaseConfirmableResponse_RebaseSha
+ // *UserRebaseConfirmableResponse_RebaseApplied
+ UserRebaseConfirmableResponsePayload isUserRebaseConfirmableResponse_UserRebaseConfirmableResponsePayload `protobuf_oneof:"user_rebase_confirmable_response_payload"`
+ PreReceiveError string `protobuf:"bytes,3,opt,name=pre_receive_error,json=preReceiveError,proto3" json:"pre_receive_error,omitempty"`
+ GitError string `protobuf:"bytes,4,opt,name=git_error,json=gitError,proto3" json:"git_error,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *UserRebaseConfirmableResponse) Reset() { *m = UserRebaseConfirmableResponse{} }
+func (m *UserRebaseConfirmableResponse) String() string { return proto.CompactTextString(m) }
+func (*UserRebaseConfirmableResponse) ProtoMessage() {}
+func (*UserRebaseConfirmableResponse) Descriptor() ([]byte, []int) {
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{29}
+}
+func (m *UserRebaseConfirmableResponse) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_UserRebaseConfirmableResponse.Unmarshal(m, b)
+}
+func (m *UserRebaseConfirmableResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_UserRebaseConfirmableResponse.Marshal(b, m, deterministic)
+}
+func (dst *UserRebaseConfirmableResponse) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_UserRebaseConfirmableResponse.Merge(dst, src)
+}
+func (m *UserRebaseConfirmableResponse) XXX_Size() int {
+ return xxx_messageInfo_UserRebaseConfirmableResponse.Size(m)
+}
+func (m *UserRebaseConfirmableResponse) XXX_DiscardUnknown() {
+ xxx_messageInfo_UserRebaseConfirmableResponse.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_UserRebaseConfirmableResponse proto.InternalMessageInfo
+
+type isUserRebaseConfirmableResponse_UserRebaseConfirmableResponsePayload interface {
+ isUserRebaseConfirmableResponse_UserRebaseConfirmableResponsePayload()
+}
+
+type UserRebaseConfirmableResponse_RebaseSha struct {
+ RebaseSha string `protobuf:"bytes,1,opt,name=rebase_sha,json=rebaseSha,proto3,oneof"`
+}
+
+type UserRebaseConfirmableResponse_RebaseApplied struct {
+ RebaseApplied bool `protobuf:"varint,2,opt,name=rebase_applied,json=rebaseApplied,proto3,oneof"`
+}
+
+func (*UserRebaseConfirmableResponse_RebaseSha) isUserRebaseConfirmableResponse_UserRebaseConfirmableResponsePayload() {
+}
+
+func (*UserRebaseConfirmableResponse_RebaseApplied) isUserRebaseConfirmableResponse_UserRebaseConfirmableResponsePayload() {
+}
+
+func (m *UserRebaseConfirmableResponse) GetUserRebaseConfirmableResponsePayload() isUserRebaseConfirmableResponse_UserRebaseConfirmableResponsePayload {
+ if m != nil {
+ return m.UserRebaseConfirmableResponsePayload
+ }
+ return nil
+}
+
+func (m *UserRebaseConfirmableResponse) GetRebaseSha() string {
+ if x, ok := m.GetUserRebaseConfirmableResponsePayload().(*UserRebaseConfirmableResponse_RebaseSha); ok {
+ return x.RebaseSha
+ }
+ return ""
+}
+
+func (m *UserRebaseConfirmableResponse) GetRebaseApplied() bool {
+ if x, ok := m.GetUserRebaseConfirmableResponsePayload().(*UserRebaseConfirmableResponse_RebaseApplied); ok {
+ return x.RebaseApplied
+ }
+ return false
+}
+
+func (m *UserRebaseConfirmableResponse) GetPreReceiveError() string {
+ if m != nil {
+ return m.PreReceiveError
+ }
+ return ""
+}
+
+func (m *UserRebaseConfirmableResponse) GetGitError() string {
+ if m != nil {
+ return m.GitError
+ }
+ return ""
+}
+
+// XXX_OneofFuncs is for the internal use of the proto package.
+func (*UserRebaseConfirmableResponse) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
+ return _UserRebaseConfirmableResponse_OneofMarshaler, _UserRebaseConfirmableResponse_OneofUnmarshaler, _UserRebaseConfirmableResponse_OneofSizer, []interface{}{
+ (*UserRebaseConfirmableResponse_RebaseSha)(nil),
+ (*UserRebaseConfirmableResponse_RebaseApplied)(nil),
+ }
+}
+
+func _UserRebaseConfirmableResponse_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
+ m := msg.(*UserRebaseConfirmableResponse)
+ // user_rebase_confirmable_response_payload
+ switch x := m.UserRebaseConfirmableResponsePayload.(type) {
+ case *UserRebaseConfirmableResponse_RebaseSha:
+ b.EncodeVarint(1<<3 | proto.WireBytes)
+ b.EncodeStringBytes(x.RebaseSha)
+ case *UserRebaseConfirmableResponse_RebaseApplied:
+ t := uint64(0)
+ if x.RebaseApplied {
+ t = 1
+ }
+ b.EncodeVarint(2<<3 | proto.WireVarint)
+ b.EncodeVarint(t)
+ case nil:
+ default:
+ return fmt.Errorf("UserRebaseConfirmableResponse.UserRebaseConfirmableResponsePayload has unexpected type %T", x)
+ }
+ return nil
+}
+
+func _UserRebaseConfirmableResponse_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
+ m := msg.(*UserRebaseConfirmableResponse)
+ switch tag {
+ case 1: // user_rebase_confirmable_response_payload.rebase_sha
+ if wire != proto.WireBytes {
+ return true, proto.ErrInternalBadWireType
+ }
+ x, err := b.DecodeStringBytes()
+ m.UserRebaseConfirmableResponsePayload = &UserRebaseConfirmableResponse_RebaseSha{x}
+ return true, err
+ case 2: // user_rebase_confirmable_response_payload.rebase_applied
+ if wire != proto.WireVarint {
+ return true, proto.ErrInternalBadWireType
+ }
+ x, err := b.DecodeVarint()
+ m.UserRebaseConfirmableResponsePayload = &UserRebaseConfirmableResponse_RebaseApplied{x != 0}
+ return true, err
+ default:
+ return false, nil
+ }
+}
+
+func _UserRebaseConfirmableResponse_OneofSizer(msg proto.Message) (n int) {
+ m := msg.(*UserRebaseConfirmableResponse)
+ // user_rebase_confirmable_response_payload
+ switch x := m.UserRebaseConfirmableResponsePayload.(type) {
+ case *UserRebaseConfirmableResponse_RebaseSha:
+ n += 1 // tag and wire
+ n += proto.SizeVarint(uint64(len(x.RebaseSha)))
+ n += len(x.RebaseSha)
+ case *UserRebaseConfirmableResponse_RebaseApplied:
+ n += 1 // tag and wire
+ n += 1
+ case nil:
+ default:
+ panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
+ }
+ return n
+}
+
type UserSquashRequest struct {
Repository *Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"`
User *User `protobuf:"bytes,2,opt,name=user,proto3" json:"user,omitempty"`
@@ -1995,7 +2391,7 @@ func (m *UserSquashRequest) Reset() { *m = UserSquashRequest{} }
func (m *UserSquashRequest) String() string { return proto.CompactTextString(m) }
func (*UserSquashRequest) ProtoMessage() {}
func (*UserSquashRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{28}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{30}
}
func (m *UserSquashRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserSquashRequest.Unmarshal(m, b)
@@ -2083,7 +2479,7 @@ func (m *UserSquashResponse) Reset() { *m = UserSquashResponse{} }
func (m *UserSquashResponse) String() string { return proto.CompactTextString(m) }
func (*UserSquashResponse) ProtoMessage() {}
func (*UserSquashResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{29}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{31}
}
func (m *UserSquashResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserSquashResponse.Unmarshal(m, b)
@@ -2131,7 +2527,7 @@ func (m *UserApplyPatchRequest) Reset() { *m = UserApplyPatchRequest{} }
func (m *UserApplyPatchRequest) String() string { return proto.CompactTextString(m) }
func (*UserApplyPatchRequest) ProtoMessage() {}
func (*UserApplyPatchRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{30}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{32}
}
func (m *UserApplyPatchRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserApplyPatchRequest.Unmarshal(m, b)
@@ -2271,7 +2667,7 @@ func (m *UserApplyPatchRequest_Header) Reset() { *m = UserApplyPatchRequ
func (m *UserApplyPatchRequest_Header) String() string { return proto.CompactTextString(m) }
func (*UserApplyPatchRequest_Header) ProtoMessage() {}
func (*UserApplyPatchRequest_Header) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{30, 0}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{32, 0}
}
func (m *UserApplyPatchRequest_Header) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserApplyPatchRequest_Header.Unmarshal(m, b)
@@ -2323,7 +2719,7 @@ func (m *UserApplyPatchResponse) Reset() { *m = UserApplyPatchResponse{}
func (m *UserApplyPatchResponse) String() string { return proto.CompactTextString(m) }
func (*UserApplyPatchResponse) ProtoMessage() {}
func (*UserApplyPatchResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{31}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{33}
}
func (m *UserApplyPatchResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserApplyPatchResponse.Unmarshal(m, b)
@@ -2366,7 +2762,7 @@ func (m *UserUpdateSubmoduleRequest) Reset() { *m = UserUpdateSubmoduleR
func (m *UserUpdateSubmoduleRequest) String() string { return proto.CompactTextString(m) }
func (*UserUpdateSubmoduleRequest) ProtoMessage() {}
func (*UserUpdateSubmoduleRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{32}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{34}
}
func (m *UserUpdateSubmoduleRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserUpdateSubmoduleRequest.Unmarshal(m, b)
@@ -2441,7 +2837,7 @@ func (m *UserUpdateSubmoduleResponse) Reset() { *m = UserUpdateSubmodule
func (m *UserUpdateSubmoduleResponse) String() string { return proto.CompactTextString(m) }
func (*UserUpdateSubmoduleResponse) ProtoMessage() {}
func (*UserUpdateSubmoduleResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_operations_3e6454468a1f158c, []int{33}
+ return fileDescriptor_operations_3ef7b709b3ba32d7, []int{35}
}
func (m *UserUpdateSubmoduleResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserUpdateSubmoduleResponse.Unmarshal(m, b)
@@ -2511,6 +2907,9 @@ func init() {
proto.RegisterType((*UserCommitFilesResponse)(nil), "gitaly.UserCommitFilesResponse")
proto.RegisterType((*UserRebaseRequest)(nil), "gitaly.UserRebaseRequest")
proto.RegisterType((*UserRebaseResponse)(nil), "gitaly.UserRebaseResponse")
+ proto.RegisterType((*UserRebaseConfirmableRequest)(nil), "gitaly.UserRebaseConfirmableRequest")
+ proto.RegisterType((*UserRebaseConfirmableRequest_Header)(nil), "gitaly.UserRebaseConfirmableRequest.Header")
+ proto.RegisterType((*UserRebaseConfirmableResponse)(nil), "gitaly.UserRebaseConfirmableResponse")
proto.RegisterType((*UserSquashRequest)(nil), "gitaly.UserSquashRequest")
proto.RegisterType((*UserSquashResponse)(nil), "gitaly.UserSquashResponse")
proto.RegisterType((*UserApplyPatchRequest)(nil), "gitaly.UserApplyPatchRequest")
@@ -2542,9 +2941,10 @@ type OperationServiceClient interface {
UserMergeBranch(ctx context.Context, opts ...grpc.CallOption) (OperationService_UserMergeBranchClient, error)
UserFFBranch(ctx context.Context, in *UserFFBranchRequest, opts ...grpc.CallOption) (*UserFFBranchResponse, error)
UserCherryPick(ctx context.Context, in *UserCherryPickRequest, opts ...grpc.CallOption) (*UserCherryPickResponse, error)
- UserRevert(ctx context.Context, in *UserRevertRequest, opts ...grpc.CallOption) (*UserRevertResponse, error)
UserCommitFiles(ctx context.Context, opts ...grpc.CallOption) (OperationService_UserCommitFilesClient, error)
UserRebase(ctx context.Context, in *UserRebaseRequest, opts ...grpc.CallOption) (*UserRebaseResponse, error)
+ UserRebaseConfirmable(ctx context.Context, opts ...grpc.CallOption) (OperationService_UserRebaseConfirmableClient, error)
+ UserRevert(ctx context.Context, in *UserRevertRequest, opts ...grpc.CallOption) (*UserRevertResponse, error)
UserSquash(ctx context.Context, in *UserSquashRequest, opts ...grpc.CallOption) (*UserSquashResponse, error)
UserApplyPatch(ctx context.Context, opts ...grpc.CallOption) (OperationService_UserApplyPatchClient, error)
UserUpdateSubmodule(ctx context.Context, in *UserUpdateSubmoduleRequest, opts ...grpc.CallOption) (*UserUpdateSubmoduleResponse, error)
@@ -2661,15 +3061,6 @@ func (c *operationServiceClient) UserCherryPick(ctx context.Context, in *UserChe
return out, nil
}
-func (c *operationServiceClient) UserRevert(ctx context.Context, in *UserRevertRequest, opts ...grpc.CallOption) (*UserRevertResponse, error) {
- out := new(UserRevertResponse)
- err := c.cc.Invoke(ctx, "/gitaly.OperationService/UserRevert", in, out, opts...)
- if err != nil {
- return nil, err
- }
- return out, nil
-}
-
func (c *operationServiceClient) UserCommitFiles(ctx context.Context, opts ...grpc.CallOption) (OperationService_UserCommitFilesClient, error) {
stream, err := c.cc.NewStream(ctx, &_OperationService_serviceDesc.Streams[1], "/gitaly.OperationService/UserCommitFiles", opts...)
if err != nil {
@@ -2704,6 +3095,7 @@ func (x *operationServiceUserCommitFilesClient) CloseAndRecv() (*UserCommitFiles
return m, nil
}
+// Deprecated: Do not use.
func (c *operationServiceClient) UserRebase(ctx context.Context, in *UserRebaseRequest, opts ...grpc.CallOption) (*UserRebaseResponse, error) {
out := new(UserRebaseResponse)
err := c.cc.Invoke(ctx, "/gitaly.OperationService/UserRebase", in, out, opts...)
@@ -2713,6 +3105,46 @@ func (c *operationServiceClient) UserRebase(ctx context.Context, in *UserRebaseR
return out, nil
}
+func (c *operationServiceClient) UserRebaseConfirmable(ctx context.Context, opts ...grpc.CallOption) (OperationService_UserRebaseConfirmableClient, error) {
+ stream, err := c.cc.NewStream(ctx, &_OperationService_serviceDesc.Streams[2], "/gitaly.OperationService/UserRebaseConfirmable", opts...)
+ if err != nil {
+ return nil, err
+ }
+ x := &operationServiceUserRebaseConfirmableClient{stream}
+ return x, nil
+}
+
+type OperationService_UserRebaseConfirmableClient interface {
+ Send(*UserRebaseConfirmableRequest) error
+ Recv() (*UserRebaseConfirmableResponse, error)
+ grpc.ClientStream
+}
+
+type operationServiceUserRebaseConfirmableClient struct {
+ grpc.ClientStream
+}
+
+func (x *operationServiceUserRebaseConfirmableClient) Send(m *UserRebaseConfirmableRequest) error {
+ return x.ClientStream.SendMsg(m)
+}
+
+func (x *operationServiceUserRebaseConfirmableClient) Recv() (*UserRebaseConfirmableResponse, error) {
+ m := new(UserRebaseConfirmableResponse)
+ if err := x.ClientStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
+func (c *operationServiceClient) UserRevert(ctx context.Context, in *UserRevertRequest, opts ...grpc.CallOption) (*UserRevertResponse, error) {
+ out := new(UserRevertResponse)
+ err := c.cc.Invoke(ctx, "/gitaly.OperationService/UserRevert", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
func (c *operationServiceClient) UserSquash(ctx context.Context, in *UserSquashRequest, opts ...grpc.CallOption) (*UserSquashResponse, error) {
out := new(UserSquashResponse)
err := c.cc.Invoke(ctx, "/gitaly.OperationService/UserSquash", in, out, opts...)
@@ -2723,7 +3155,7 @@ func (c *operationServiceClient) UserSquash(ctx context.Context, in *UserSquashR
}
func (c *operationServiceClient) UserApplyPatch(ctx context.Context, opts ...grpc.CallOption) (OperationService_UserApplyPatchClient, error) {
- stream, err := c.cc.NewStream(ctx, &_OperationService_serviceDesc.Streams[2], "/gitaly.OperationService/UserApplyPatch", opts...)
+ stream, err := c.cc.NewStream(ctx, &_OperationService_serviceDesc.Streams[3], "/gitaly.OperationService/UserApplyPatch", opts...)
if err != nil {
return nil, err
}
@@ -2776,9 +3208,10 @@ type OperationServiceServer interface {
UserMergeBranch(OperationService_UserMergeBranchServer) error
UserFFBranch(context.Context, *UserFFBranchRequest) (*UserFFBranchResponse, error)
UserCherryPick(context.Context, *UserCherryPickRequest) (*UserCherryPickResponse, error)
- UserRevert(context.Context, *UserRevertRequest) (*UserRevertResponse, error)
UserCommitFiles(OperationService_UserCommitFilesServer) error
UserRebase(context.Context, *UserRebaseRequest) (*UserRebaseResponse, error)
+ UserRebaseConfirmable(OperationService_UserRebaseConfirmableServer) error
+ UserRevert(context.Context, *UserRevertRequest) (*UserRevertResponse, error)
UserSquash(context.Context, *UserSquashRequest) (*UserSquashResponse, error)
UserApplyPatch(OperationService_UserApplyPatchServer) error
UserUpdateSubmodule(context.Context, *UserUpdateSubmoduleRequest) (*UserUpdateSubmoduleResponse, error)
@@ -2958,24 +3391,6 @@ func _OperationService_UserCherryPick_Handler(srv interface{}, ctx context.Conte
return interceptor(ctx, in, info, handler)
}
-func _OperationService_UserRevert_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
- in := new(UserRevertRequest)
- if err := dec(in); err != nil {
- return nil, err
- }
- if interceptor == nil {
- return srv.(OperationServiceServer).UserRevert(ctx, in)
- }
- info := &grpc.UnaryServerInfo{
- Server: srv,
- FullMethod: "/gitaly.OperationService/UserRevert",
- }
- handler := func(ctx context.Context, req interface{}) (interface{}, error) {
- return srv.(OperationServiceServer).UserRevert(ctx, req.(*UserRevertRequest))
- }
- return interceptor(ctx, in, info, handler)
-}
-
func _OperationService_UserCommitFiles_Handler(srv interface{}, stream grpc.ServerStream) error {
return srv.(OperationServiceServer).UserCommitFiles(&operationServiceUserCommitFilesServer{stream})
}
@@ -3020,6 +3435,50 @@ func _OperationService_UserRebase_Handler(srv interface{}, ctx context.Context,
return interceptor(ctx, in, info, handler)
}
+func _OperationService_UserRebaseConfirmable_Handler(srv interface{}, stream grpc.ServerStream) error {
+ return srv.(OperationServiceServer).UserRebaseConfirmable(&operationServiceUserRebaseConfirmableServer{stream})
+}
+
+type OperationService_UserRebaseConfirmableServer interface {
+ Send(*UserRebaseConfirmableResponse) error
+ Recv() (*UserRebaseConfirmableRequest, error)
+ grpc.ServerStream
+}
+
+type operationServiceUserRebaseConfirmableServer struct {
+ grpc.ServerStream
+}
+
+func (x *operationServiceUserRebaseConfirmableServer) Send(m *UserRebaseConfirmableResponse) error {
+ return x.ServerStream.SendMsg(m)
+}
+
+func (x *operationServiceUserRebaseConfirmableServer) Recv() (*UserRebaseConfirmableRequest, error) {
+ m := new(UserRebaseConfirmableRequest)
+ if err := x.ServerStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
+func _OperationService_UserRevert_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UserRevertRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(OperationServiceServer).UserRevert(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/gitaly.OperationService/UserRevert",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(OperationServiceServer).UserRevert(ctx, req.(*UserRevertRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
func _OperationService_UserSquash_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(UserSquashRequest)
if err := dec(in); err != nil {
@@ -3119,14 +3578,14 @@ var _OperationService_serviceDesc = grpc.ServiceDesc{
Handler: _OperationService_UserCherryPick_Handler,
},
{
- MethodName: "UserRevert",
- Handler: _OperationService_UserRevert_Handler,
- },
- {
MethodName: "UserRebase",
Handler: _OperationService_UserRebase_Handler,
},
{
+ MethodName: "UserRevert",
+ Handler: _OperationService_UserRevert_Handler,
+ },
+ {
MethodName: "UserSquash",
Handler: _OperationService_UserSquash_Handler,
},
@@ -3148,6 +3607,12 @@ var _OperationService_serviceDesc = grpc.ServiceDesc{
ClientStreams: true,
},
{
+ StreamName: "UserRebaseConfirmable",
+ Handler: _OperationService_UserRebaseConfirmable_Handler,
+ ServerStreams: true,
+ ClientStreams: true,
+ },
+ {
StreamName: "UserApplyPatch",
Handler: _OperationService_UserApplyPatch_Handler,
ClientStreams: true,
@@ -3156,126 +3621,135 @@ var _OperationService_serviceDesc = grpc.ServiceDesc{
Metadata: "operations.proto",
}
-func init() { proto.RegisterFile("operations.proto", fileDescriptor_operations_3e6454468a1f158c) }
-
-var fileDescriptor_operations_3e6454468a1f158c = []byte{
- // 1881 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x59, 0xcd, 0x6f, 0x23, 0x59,
- 0x11, 0x77, 0xdb, 0x4e, 0xc7, 0xae, 0x38, 0x89, 0xf3, 0xf6, 0xcb, 0xeb, 0x99, 0x30, 0xd9, 0xce,
- 0x2e, 0xcc, 0xae, 0x58, 0xcf, 0x6a, 0x40, 0x20, 0x21, 0x2d, 0x68, 0x92, 0x38, 0xcc, 0x2e, 0xcc,
- 0x4e, 0xe8, 0x64, 0x16, 0x84, 0x90, 0x9a, 0x8e, 0xfd, 0x62, 0xb7, 0xb0, 0xdd, 0xbd, 0xaf, 0xdb,
- 0x61, 0x82, 0x10, 0x17, 0x24, 0xae, 0xdc, 0x00, 0x89, 0x33, 0x12, 0x5f, 0xff, 0x00, 0x17, 0x0e,
- 0x1c, 0x10, 0x5c, 0xe1, 0xc0, 0x81, 0x33, 0x57, 0x0e, 0x48, 0x70, 0x46, 0xef, 0x55, 0xf5, 0xc7,
- 0xeb, 0x6e, 0x5b, 0x93, 0x21, 0xd1, 0x8c, 0xd0, 0xde, 0xdc, 0xf5, 0xea, 0xd5, 0xab, 0xfa, 0x55,
- 0xbd, 0xaa, 0x7a, 0x65, 0x68, 0xfb, 0x01, 0x17, 0x6e, 0xe4, 0xf9, 0xb3, 0xb0, 0x17, 0x08, 0x3f,
- 0xf2, 0x99, 0x39, 0xf2, 0x22, 0x77, 0x72, 0xd1, 0x6d, 0x85, 0x63, 0x57, 0xf0, 0x21, 0x52, 0xad,
- 0xdf, 0x19, 0xf0, 0xca, 0xa3, 0x90, 0x8b, 0x7d, 0xc1, 0xdd, 0x88, 0xef, 0x09, 0x77, 0x36, 0x18,
- 0xdb, 0xfc, 0xa3, 0x39, 0x0f, 0x23, 0x76, 0x17, 0x40, 0xf0, 0xc0, 0x0f, 0xbd, 0xc8, 0x17, 0x17,
- 0x1d, 0x63, 0xc7, 0xb8, 0xbd, 0x76, 0x97, 0xf5, 0x50, 0x4c, 0xcf, 0x4e, 0x56, 0xec, 0x0c, 0x17,
- 0xbb, 0x05, 0x6b, 0xa7, 0x4a, 0x88, 0x33, 0x73, 0xa7, 0xbc, 0x53, 0xdd, 0x31, 0x6e, 0xb7, 0x6c,
- 0x40, 0xd2, 0x07, 0xee, 0x94, 0xb3, 0x1d, 0xa8, 0xcf, 0x43, 0x2e, 0x3a, 0x35, 0x25, 0xae, 0x15,
- 0x8b, 0x93, 0x3a, 0xd8, 0x6a, 0x45, 0x8a, 0x08, 0x23, 0x57, 0x44, 0x4e, 0xe0, 0x7b, 0xb3, 0xa8,
- 0x53, 0x47, 0x11, 0x8a, 0x74, 0x24, 0x29, 0x5f, 0x30, 0xff, 0xf5, 0xd3, 0xdb, 0xd5, 0x86, 0x61,
- 0xcd, 0xa0, 0x53, 0x54, 0x3d, 0x0c, 0xfc, 0x59, 0xc8, 0xd9, 0x27, 0xc1, 0xc4, 0x43, 0x49, 0xef,
- 0x8d, 0xf8, 0x20, 0xe2, 0xa3, 0x55, 0xf6, 0x16, 0x6c, 0x05, 0x82, 0x3b, 0x82, 0x0f, 0xb8, 0x77,
- 0xce, 0x1d, 0x2e, 0x84, 0x2f, 0x94, 0xd6, 0x4d, 0x7b, 0x33, 0x10, 0xdc, 0x46, 0x7a, 0x5f, 0x92,
- 0xad, 0x3f, 0x11, 0x56, 0x8f, 0x82, 0xe1, 0xf3, 0x82, 0xd5, 0xcb, 0x60, 0xce, 0xf8, 0x77, 0x05,
- 0x3f, 0x27, 0x98, 0xe8, 0x4b, 0xd2, 0xfd, 0xc9, 0x50, 0xd2, 0x57, 0x90, 0x8e, 0x5f, 0x09, 0x74,
- 0x87, 0x08, 0x9d, 0x6e, 0x09, 0x41, 0x57, 0x0a, 0x89, 0x51, 0x0e, 0xc9, 0xcf, 0x08, 0x92, 0x03,
- 0x3e, 0xe1, 0xcf, 0x07, 0x24, 0x79, 0x13, 0x75, 0xcd, 0x9e, 0xc2, 0xc4, 0x1f, 0x1b, 0xf0, 0x62,
- 0x2a, 0xe8, 0xc4, 0x1d, 0xfd, 0x2f, 0xf6, 0xbd, 0x0a, 0x8d, 0xc8, 0x1d, 0x65, 0x8d, 0x5b, 0x8d,
- 0xdc, 0xd1, 0x25, 0x2d, 0xdb, 0x87, 0x97, 0x72, 0x0a, 0x3d, 0x85, 0x59, 0x7f, 0x21, 0xb3, 0xf0,
- 0xf6, 0x3c, 0x43, 0xb3, 0xd8, 0xa7, 0x60, 0x33, 0x72, 0xc5, 0x88, 0x47, 0x8e, 0xe0, 0xe7, 0x5e,
- 0xe8, 0xf9, 0x33, 0x0a, 0xe6, 0x0d, 0x24, 0xdb, 0x44, 0x65, 0x1d, 0x58, 0x9d, 0xf2, 0x30, 0x74,
- 0x47, 0x9c, 0xa2, 0x3a, 0xfe, 0x4c, 0x90, 0xf9, 0x1e, 0x22, 0x93, 0xb1, 0x89, 0x90, 0xd9, 0x86,
- 0x5a, 0xe4, 0x8e, 0xc8, 0x9a, 0xb5, 0x58, 0x09, 0xc9, 0x21, 0xe9, 0xf2, 0xba, 0xf0, 0xc7, 0x5e,
- 0x18, 0x85, 0x4a, 0xfb, 0x86, 0x4d, 0x5f, 0xe5, 0x80, 0xd6, 0xca, 0x01, 0xfd, 0xbb, 0x01, 0x2f,
- 0xcb, 0xc3, 0x1f, 0x70, 0x31, 0xba, 0x82, 0x9b, 0x10, 0xe3, 0x56, 0x5d, 0x88, 0xdb, 0x0d, 0x68,
- 0x0e, 0xfc, 0xe9, 0xd4, 0x8b, 0x1c, 0x6f, 0x48, 0x4a, 0x35, 0x90, 0xf0, 0xde, 0x50, 0x5a, 0x44,
- 0xf9, 0x8f, 0x12, 0x03, 0xe5, 0xbb, 0x85, 0x18, 0xb2, 0x17, 0x61, 0xc5, 0x0d, 0x82, 0xc9, 0x45,
- 0xc7, 0x54, 0x10, 0xe0, 0x47, 0x82, 0xec, 0x6f, 0xe9, 0xa2, 0x6b, 0xd6, 0x11, 0xb8, 0x9a, 0x22,
- 0x46, 0x4e, 0x91, 0x3d, 0x58, 0xa7, 0x1b, 0x3d, 0x57, 0xc9, 0x86, 0x02, 0x61, 0x3b, 0x36, 0xe8,
- 0x61, 0x5c, 0xa7, 0x50, 0x28, 0x66, 0x24, 0xbb, 0x75, 0x9a, 0xf9, 0x2a, 0x77, 0x43, 0xbd, 0xd4,
- 0x0d, 0xef, 0xd7, 0x1b, 0xd5, 0x76, 0xcd, 0xfa, 0x87, 0x81, 0x91, 0xa0, 0xd4, 0x3d, 0xf1, 0x6d,
- 0x7e, 0x76, 0xbd, 0xbe, 0xd8, 0x06, 0x08, 0xfd, 0xb9, 0x18, 0x70, 0x27, 0x1c, 0xbb, 0xe4, 0x8c,
- 0x26, 0x52, 0x8e, 0xc7, 0xee, 0x42, 0x6f, 0x6c, 0x03, 0x24, 0xa1, 0x7f, 0x46, 0x0e, 0x69, 0xc6,
- 0x51, 0x7f, 0x96, 0x75, 0x96, 0x59, 0x1e, 0xf0, 0x6e, 0x26, 0xe6, 0xc8, 0xcc, 0x27, 0x71, 0xca,
- 0x65, 0xaa, 0xde, 0x0f, 0xe0, 0xa5, 0x52, 0x1f, 0x2d, 0x3f, 0xe1, 0x35, 0x68, 0x49, 0x00, 0x9d,
- 0x81, 0xba, 0x8a, 0x43, 0xba, 0x57, 0x6b, 0x92, 0x86, 0xb7, 0x73, 0xc8, 0xde, 0x80, 0x0d, 0x8a,
- 0x8c, 0x98, 0xa9, 0xa6, 0x98, 0x28, 0x5e, 0x88, 0xcd, 0xfa, 0xa5, 0x01, 0x2f, 0x48, 0x1b, 0x0f,
- 0x0f, 0x9f, 0xd7, 0x4b, 0x95, 0x78, 0xe3, 0x47, 0x94, 0x53, 0x53, 0x55, 0xc9, 0x19, 0x85, 0x4b,
- 0x60, 0x5c, 0xd1, 0x25, 0x58, 0xe0, 0xb3, 0x3f, 0x56, 0x29, 0x11, 0x8e, 0xb9, 0x10, 0x17, 0x47,
- 0xde, 0xe0, 0x3b, 0xd7, 0x8b, 0xda, 0x9b, 0x60, 0x22, 0x48, 0x74, 0xbb, 0xb7, 0x62, 0x9e, 0x2f,
- 0x7b, 0xd1, 0xbe, 0x5a, 0xb0, 0x89, 0x21, 0x5f, 0xe1, 0xeb, 0x85, 0x0a, 0xbf, 0x38, 0x43, 0xbd,
- 0x05, 0x5b, 0xd8, 0x18, 0x66, 0x05, 0xe0, 0xc5, 0xd8, 0x54, 0x0b, 0x7b, 0xa9, 0x94, 0x77, 0xa1,
- 0x8d, 0xbc, 0x19, 0x6b, 0x57, 0x17, 0x5a, 0x8b, 0xdb, 0x53, 0x42, 0xe2, 0xd1, 0xbf, 0x51, 0x52,
- 0xcf, 0x02, 0x79, 0xb5, 0x3e, 0xc5, 0xd8, 0x77, 0x22, 0xc1, 0x73, 0x3e, 0xc5, 0x85, 0x13, 0xc1,
- 0xd1, 0xa7, 0xf2, 0x46, 0x51, 0x64, 0x66, 0xcb, 0xd0, 0x1a, 0xd2, 0x90, 0xe5, 0x12, 0x79, 0xd2,
- 0xfa, 0x43, 0x15, 0xb6, 0x94, 0x07, 0xf9, 0x39, 0x97, 0xa6, 0x7f, 0x1c, 0x1e, 0x4f, 0x11, 0x1e,
- 0x7f, 0x35, 0x80, 0x65, 0x41, 0xfc, 0xff, 0x08, 0x8d, 0x7f, 0x57, 0xe1, 0x86, 0x0a, 0x7a, 0xb5,
- 0xff, 0xd0, 0x9b, 0xf0, 0xf0, 0xde, 0x40, 0xaa, 0x7b, 0x9f, 0xbb, 0x43, 0x2e, 0xd8, 0x21, 0x98,
- 0xae, 0xfa, 0x56, 0x76, 0x6d, 0xdc, 0xed, 0x65, 0x5d, 0xbe, 0x60, 0x53, 0x0f, 0x3f, 0x4e, 0x2e,
- 0x02, 0x6e, 0xd3, 0x6e, 0x99, 0x6b, 0xcf, 0xbc, 0x09, 0x77, 0x02, 0x37, 0x1a, 0x53, 0xdb, 0xd8,
- 0x90, 0x84, 0x23, 0x37, 0x1a, 0xb3, 0x5d, 0x58, 0x0f, 0x64, 0x3f, 0xe8, 0xcf, 0x43, 0x64, 0xa8,
- 0x29, 0x86, 0x56, 0x4c, 0x54, 0x4c, 0xb2, 0x84, 0xb8, 0x21, 0xff, 0xdc, 0x67, 0x9d, 0x81, 0x3f,
- 0x8b, 0x38, 0xbd, 0x16, 0x65, 0x09, 0x51, 0xd4, 0x7d, 0x24, 0xb2, 0x37, 0xa1, 0xcd, 0x1f, 0xf3,
- 0xc1, 0x3c, 0xe2, 0x8e, 0x94, 0x3f, 0xf5, 0x87, 0x18, 0x3c, 0x0d, 0x7b, 0x93, 0xe8, 0x87, 0x44,
- 0x96, 0xc7, 0x7a, 0xb3, 0x33, 0x2e, 0x12, 0x81, 0xd8, 0x0d, 0xb5, 0x14, 0x91, 0xe4, 0x59, 0x8f,
- 0x00, 0x52, 0x73, 0x18, 0x80, 0xb9, 0x6f, 0xf7, 0xef, 0x9d, 0xf4, 0xdb, 0x15, 0xb6, 0x01, 0x80,
- 0xbf, 0x9d, 0x83, 0xf7, 0xec, 0xb6, 0x21, 0xd7, 0x1e, 0x1d, 0x1d, 0xc8, 0xb5, 0x2a, 0x6b, 0x40,
- 0xfd, 0xc1, 0xc3, 0x0f, 0xfb, 0xed, 0x9a, 0xa4, 0x1e, 0xf4, 0xbf, 0xda, 0x3f, 0xe9, 0xb7, 0xeb,
- 0xac, 0x09, 0x2b, 0xfb, 0xf7, 0x1f, 0x3c, 0x3c, 0x68, 0xaf, 0x58, 0x3f, 0xa1, 0xa6, 0xa5, 0x00,
- 0x21, 0x7b, 0x17, 0xcc, 0xb1, 0x82, 0x91, 0x22, 0x69, 0xf7, 0x09, 0x10, 0xbf, 0x5f, 0xb1, 0x69,
- 0x13, 0xeb, 0xc2, 0x6a, 0x6c, 0x8e, 0x82, 0xf9, 0x7e, 0xc5, 0x8e, 0x09, 0x7b, 0x16, 0xec, 0xc8,
- 0x3b, 0xea, 0x50, 0x00, 0x49, 0x7c, 0x42, 0x07, 0x1d, 0xe4, 0x04, 0xee, 0xc5, 0xc4, 0x77, 0x87,
- 0xd6, 0xcf, 0x6b, 0x70, 0x33, 0x77, 0x12, 0x25, 0x0c, 0x8a, 0x88, 0xeb, 0x49, 0x1b, 0xb9, 0x5c,
- 0x50, 0x2b, 0xe4, 0x82, 0x37, 0x60, 0x83, 0xd4, 0x8e, 0x53, 0x02, 0xe6, 0x8b, 0x75, 0xa4, 0x3e,
- 0xa0, 0xc4, 0xf0, 0x69, 0x60, 0xc4, 0xe6, 0xce, 0xa3, 0xb1, 0x2f, 0x50, 0x1c, 0x66, 0x8f, 0x36,
- 0xae, 0xdc, 0x53, 0x0b, 0x4a, 0x68, 0x0f, 0x5e, 0xd0, 0xb9, 0xf9, 0xd4, 0xf5, 0x26, 0x94, 0x48,
- 0xb6, 0xb2, 0xec, 0x7d, 0xb9, 0x50, 0x9e, 0x76, 0x56, 0x9f, 0x3c, 0xed, 0x34, 0x9e, 0x38, 0xed,
- 0xc8, 0x16, 0xfd, 0xcc, 0x17, 0x03, 0xde, 0x69, 0x62, 0x8b, 0xae, 0x3e, 0xac, 0xdf, 0xc7, 0x35,
- 0xaa, 0xe0, 0x1d, 0xf6, 0xc5, 0x5c, 0xdc, 0xbc, 0xbe, 0x20, 0x6e, 0x34, 0x6f, 0x66, 0x02, 0xe7,
- 0xf3, 0xc9, 0x4d, 0xaf, 0xea, 0x19, 0xac, 0x3c, 0xee, 0x2a, 0xf1, 0xd5, 0x8e, 0x13, 0xe4, 0xde,
- 0x2e, 0xbc, 0x56, 0x8c, 0x2e, 0x81, 0xa7, 0x25, 0xe1, 0xf5, 0xeb, 0x78, 0x06, 0x95, 0x55, 0xe8,
- 0x0a, 0x53, 0xe9, 0x2d, 0x58, 0xf3, 0x66, 0x43, 0xfe, 0x58, 0x4b, 0xa2, 0xa0, 0x48, 0x4b, 0x92,
- 0xe3, 0x82, 0x67, 0xde, 0x6f, 0x92, 0xba, 0x29, 0x73, 0xcc, 0xb5, 0x37, 0xa3, 0x42, 0x1d, 0x93,
- 0x69, 0x46, 0x91, 0xb0, 0xe4, 0x85, 0xb7, 0x0d, 0x74, 0x45, 0xd4, 0x53, 0x64, 0x05, 0x9f, 0x22,
- 0x48, 0x91, 0x4f, 0x91, 0x2f, 0xc1, 0x96, 0xe0, 0x53, 0x3f, 0xe2, 0xd9, 0x18, 0x34, 0x17, 0x2a,
- 0xdc, 0x46, 0xe6, 0x4c, 0x10, 0xee, 0xc2, 0x3a, 0x09, 0xa0, 0xe3, 0x31, 0xd6, 0x5b, 0x48, 0xdc,
- 0xd3, 0x3b, 0xe2, 0xef, 0xc7, 0xf5, 0x11, 0xc1, 0x4a, 0x5e, 0xe3, 0x40, 0x76, 0x49, 0x15, 0xf1,
- 0xe9, 0x40, 0x96, 0x4a, 0x15, 0x2f, 0xd1, 0xe9, 0x4a, 0x88, 0x46, 0xb9, 0xba, 0xd7, 0x18, 0x51,
- 0xd1, 0xb3, 0x7e, 0x45, 0xbe, 0x3a, 0xfe, 0x68, 0xee, 0x86, 0xd7, 0xff, 0x70, 0x08, 0xd5, 0x31,
- 0x19, 0x5f, 0x21, 0x61, 0x89, 0xaf, 0xe4, 0x26, 0x95, 0x0f, 0x52, 0x57, 0x35, 0x14, 0x41, 0xc2,
- 0xf0, 0x0a, 0xac, 0xf2, 0xd9, 0x50, 0x2d, 0x99, 0x6a, 0xc9, 0xe4, 0xb3, 0xa1, 0x5c, 0x78, 0x1d,
- 0x4c, 0x4c, 0x4d, 0xd4, 0xb2, 0xe8, 0xea, 0xd0, 0x5a, 0x49, 0x72, 0x6c, 0x94, 0x24, 0xc7, 0xc4,
- 0x53, 0x1e, 0x7a, 0x2a, 0x86, 0x2a, 0xf5, 0x14, 0x59, 0x95, 0xf1, 0x14, 0x52, 0xa4, 0x26, 0xcb,
- 0xd0, 0xc7, 0x97, 0xb8, 0x5d, 0x74, 0xa5, 0xf5, 0x0b, 0x7a, 0x9d, 0xdc, 0x0b, 0x82, 0xc9, 0xc5,
- 0x91, 0x1b, 0xa5, 0x6f, 0xba, 0xa5, 0xf9, 0xaa, 0xc0, 0xde, 0x2b, 0x2b, 0x74, 0x81, 0x64, 0xe0,
- 0x61, 0x5a, 0xe8, 0x88, 0xd0, 0xfd, 0xa1, 0x01, 0xe6, 0xb5, 0x96, 0xab, 0x5d, 0x58, 0xa7, 0xc7,
- 0x3c, 0xf9, 0x9a, 0x3a, 0x16, 0x24, 0xea, 0x17, 0x23, 0x29, 0xbb, 0x6a, 0xca, 0xe2, 0x28, 0x1d,
- 0x0b, 0x79, 0xf1, 0x5b, 0x98, 0xd7, 0xb3, 0x76, 0x5f, 0x5d, 0x56, 0xb4, 0xfe, 0x63, 0x40, 0x37,
- 0x9d, 0x01, 0x1f, 0xcf, 0x4f, 0xa7, 0xfe, 0x70, 0x3e, 0xe1, 0xd7, 0x3e, 0x27, 0xa1, 0xa0, 0xcc,
- 0xcc, 0x49, 0x90, 0xb2, 0x6c, 0x4e, 0x72, 0x13, 0x9a, 0x61, 0xac, 0x60, 0x3c, 0x26, 0x49, 0x08,
- 0x25, 0x91, 0x6e, 0x2e, 0x8b, 0xf4, 0x3f, 0x1b, 0xd8, 0xde, 0x16, 0x0c, 0x7f, 0x36, 0x8f, 0xf5,
- 0x42, 0xf7, 0x5e, 0x2f, 0x74, 0xef, 0xef, 0xd7, 0x1b, 0xb5, 0x76, 0xdd, 0x2e, 0x3e, 0x08, 0xee,
- 0xfe, 0xb3, 0x09, 0xed, 0x44, 0x9f, 0x63, 0x2e, 0xce, 0xbd, 0x01, 0x67, 0x5f, 0x87, 0x76, 0xfe,
- 0x7f, 0x11, 0x76, 0x4b, 0xab, 0xdc, 0xc5, 0x3f, 0x7b, 0xba, 0x3b, 0x8b, 0x19, 0x10, 0x17, 0xab,
- 0x12, 0x0b, 0xce, 0xfe, 0x6b, 0xa0, 0x0b, 0x2e, 0xf9, 0x67, 0x44, 0x17, 0x5c, 0xf6, 0x87, 0x43,
- 0x2a, 0x38, 0x3b, 0xab, 0xd7, 0x05, 0x97, 0xfc, 0xbf, 0xa0, 0x0b, 0x2e, 0x1b, 0xf3, 0x5b, 0x15,
- 0xf6, 0x01, 0xac, 0x6b, 0x03, 0x61, 0x76, 0xb3, 0x68, 0x66, 0x3a, 0xfb, 0xee, 0x6e, 0x2f, 0x58,
- 0xcd, 0xcb, 0x4b, 0x46, 0xef, 0xba, 0xbc, 0xfc, 0x5f, 0x04, 0xba, 0xbc, 0xc2, 0xbc, 0xde, 0xaa,
- 0xb0, 0xaf, 0xc1, 0x86, 0x3e, 0xbf, 0x63, 0xda, 0x96, 0xc2, 0xf8, 0xb2, 0xfb, 0x89, 0x45, 0xcb,
- 0x89, 0xc8, 0x6f, 0xc0, 0x66, 0x6e, 0x50, 0xcb, 0x8a, 0x9b, 0x74, 0x24, 0x6f, 0x2d, 0x5c, 0x8f,
- 0xa5, 0xde, 0x36, 0xde, 0x31, 0xd8, 0x57, 0xa0, 0x95, 0x9d, 0x6e, 0xb1, 0x1b, 0xd9, 0x6d, 0xb9,
- 0xf1, 0x5c, 0xf7, 0x66, 0xf9, 0x62, 0xde, 0xf2, 0x74, 0xb0, 0xa2, 0x5b, 0x5e, 0x98, 0x5c, 0xe9,
- 0x96, 0x17, 0xe7, 0x31, 0x56, 0x85, 0xf5, 0x01, 0xd2, 0xc7, 0x38, 0x7b, 0x55, 0x4b, 0x3f, 0xd9,
- 0x29, 0x47, 0xb7, 0x5b, 0xb6, 0x94, 0x88, 0xf9, 0x10, 0x01, 0xcc, 0x74, 0xa3, 0x3a, 0x80, 0xc5,
- 0xbe, 0x59, 0x07, 0xb0, 0xa4, 0x8d, 0x95, 0x00, 0xa6, 0xea, 0xc9, 0x3e, 0x27, 0xaf, 0x5e, 0xa6,
- 0x99, 0xcc, 0xab, 0x97, 0x6d, 0x9d, 0x52, 0x2b, 0xb1, 0x50, 0xeb, 0x62, 0xb4, 0x3e, 0x47, 0x17,
- 0xa3, 0xd7, 0x75, 0xab, 0xc2, 0x8e, 0x11, 0xff, 0xb4, 0xb8, 0xe8, 0xf8, 0x17, 0x8a, 0xad, 0x8e,
- 0x7f, 0xb1, 0x26, 0x29, 0x13, 0xbf, 0x8d, 0xa3, 0xda, 0x5c, 0x66, 0x65, 0x56, 0x31, 0x05, 0xe4,
- 0xeb, 0x4d, 0x77, 0x77, 0x29, 0x4f, 0x7c, 0xc6, 0xde, 0x3b, 0xdf, 0x94, 0x7c, 0x13, 0xf7, 0xb4,
- 0x37, 0xf0, 0xa7, 0x77, 0xf0, 0xe7, 0xdb, 0xbe, 0x18, 0xdd, 0xc1, 0xdd, 0x6f, 0xab, 0x7f, 0xb5,
- 0xef, 0x8c, 0x7c, 0xfa, 0x0e, 0x4e, 0x4f, 0x4d, 0x45, 0xfa, 0xcc, 0x7f, 0x03, 0x00, 0x00, 0xff,
- 0xff, 0xcd, 0x80, 0x54, 0x9c, 0x12, 0x1f, 0x00, 0x00,
+func init() { proto.RegisterFile("operations.proto", fileDescriptor_operations_3ef7b709b3ba32d7) }
+
+var fileDescriptor_operations_3ef7b709b3ba32d7 = []byte{
+ // 2019 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5a, 0xcf, 0x6f, 0x23, 0x49,
+ 0x15, 0x4e, 0xdb, 0x9e, 0x8e, 0xf3, 0xe2, 0x24, 0x4e, 0xed, 0xee, 0xac, 0xd7, 0x33, 0x21, 0xd9,
+ 0xce, 0x0c, 0x93, 0x19, 0x58, 0xcf, 0x6a, 0x40, 0x20, 0x21, 0x2d, 0x68, 0x92, 0x38, 0x64, 0x17,
+ 0x66, 0x27, 0xf4, 0x64, 0x40, 0xa0, 0x85, 0x56, 0xc7, 0xae, 0xd8, 0x2d, 0x6c, 0x77, 0x6f, 0x75,
+ 0x3b, 0x4c, 0x38, 0x20, 0x24, 0x24, 0xe0, 0xc8, 0x09, 0x90, 0x10, 0x12, 0x9c, 0x90, 0x10, 0x17,
+ 0x2e, 0x1c, 0x90, 0x40, 0x48, 0x9c, 0xe0, 0xba, 0x07, 0x4e, 0xf0, 0x27, 0x70, 0xe3, 0xc2, 0x09,
+ 0x55, 0xbd, 0xd7, 0xed, 0xae, 0xfe, 0x11, 0x92, 0x25, 0xd1, 0x0e, 0x88, 0x9b, 0xfb, 0xd5, 0xeb,
+ 0xd7, 0xef, 0x7d, 0xef, 0xab, 0x57, 0xaf, 0xaa, 0x0c, 0x4d, 0x3f, 0xe0, 0xc2, 0x8d, 0x3c, 0x7f,
+ 0x12, 0x76, 0x02, 0xe1, 0x47, 0x3e, 0x33, 0x07, 0x5e, 0xe4, 0x8e, 0x4e, 0xdb, 0x8d, 0x70, 0xe8,
+ 0x0a, 0xde, 0x47, 0xa9, 0xf5, 0x6b, 0x03, 0x5e, 0x7e, 0x1a, 0x72, 0xb1, 0x23, 0xb8, 0x1b, 0xf1,
+ 0x6d, 0xe1, 0x4e, 0x7a, 0x43, 0x9b, 0xbf, 0x3b, 0xe5, 0x61, 0xc4, 0x1e, 0x00, 0x08, 0x1e, 0xf8,
+ 0xa1, 0x17, 0xf9, 0xe2, 0xb4, 0x65, 0x6c, 0x18, 0x5b, 0x8b, 0x0f, 0x58, 0x07, 0xcd, 0x74, 0xec,
+ 0x64, 0xc4, 0x4e, 0x69, 0xb1, 0x75, 0x58, 0x3c, 0x52, 0x46, 0x9c, 0x89, 0x3b, 0xe6, 0xad, 0xca,
+ 0x86, 0xb1, 0xd5, 0xb0, 0x01, 0x45, 0x6f, 0xbb, 0x63, 0xce, 0x36, 0xa0, 0x36, 0x0d, 0xb9, 0x68,
+ 0x55, 0x95, 0xb9, 0x46, 0x6c, 0x4e, 0xfa, 0x60, 0xab, 0x11, 0x69, 0x22, 0x8c, 0x5c, 0x11, 0x39,
+ 0x81, 0xef, 0x4d, 0xa2, 0x56, 0x0d, 0x4d, 0x28, 0xd1, 0x81, 0x94, 0x58, 0x13, 0x68, 0xe5, 0x5d,
+ 0x0e, 0x03, 0x7f, 0x12, 0x72, 0xf6, 0x61, 0x30, 0xf1, 0x63, 0xe4, 0xef, 0x72, 0xfc, 0x01, 0xd2,
+ 0xa3, 0x51, 0x76, 0x0f, 0x56, 0x03, 0xc1, 0x1d, 0xc1, 0x7b, 0xdc, 0x3b, 0xe1, 0x0e, 0x17, 0xc2,
+ 0x17, 0xca, 0xdb, 0x05, 0x7b, 0x25, 0x10, 0xdc, 0x46, 0x79, 0x57, 0x8a, 0xad, 0x3f, 0x10, 0x46,
+ 0x4f, 0x83, 0xfe, 0xf3, 0x82, 0xd1, 0x75, 0x30, 0x27, 0xfc, 0x1b, 0x82, 0x9f, 0x10, 0x3c, 0xf4,
+ 0x24, 0xe5, 0xfe, 0xa8, 0x2f, 0xe5, 0xd7, 0x50, 0x8e, 0x4f, 0xd6, 0x1e, 0x42, 0xa6, 0x47, 0x40,
+ 0x90, 0x15, 0x42, 0x61, 0x14, 0x43, 0xf1, 0x03, 0x82, 0x62, 0x97, 0x8f, 0xf8, 0xf3, 0x01, 0x45,
+ 0x1c, 0x9a, 0xee, 0xd1, 0xfb, 0x08, 0xed, 0x7b, 0x06, 0xbc, 0x38, 0x33, 0x74, 0xe8, 0x0e, 0xfe,
+ 0x93, 0xb8, 0x5e, 0x81, 0x7a, 0xe4, 0x0e, 0xd2, 0x41, 0xcd, 0x47, 0xee, 0xe0, 0x9c, 0x11, 0xed,
+ 0xc0, 0x4b, 0x19, 0x47, 0xde, 0x47, 0x38, 0x7f, 0xa6, 0x70, 0x70, 0x96, 0x7c, 0x80, 0xe1, 0xb0,
+ 0x3b, 0xb0, 0x12, 0xb9, 0x62, 0xc0, 0x23, 0x47, 0xf0, 0x13, 0x2f, 0xf4, 0xfc, 0x09, 0x91, 0x76,
+ 0x19, 0xc5, 0x36, 0x49, 0x59, 0x0b, 0xe6, 0xc7, 0x3c, 0x0c, 0xdd, 0x01, 0x27, 0xf6, 0xc6, 0x8f,
+ 0xd6, 0x37, 0x11, 0x91, 0x54, 0x2c, 0x84, 0xc8, 0x1a, 0x54, 0x23, 0x77, 0x40, 0x51, 0x2c, 0xc6,
+ 0x1f, 0x97, 0x1a, 0x52, 0x2e, 0xa7, 0x03, 0x7f, 0xe6, 0x85, 0x51, 0xa8, 0xbc, 0xae, 0xdb, 0xf4,
+ 0x54, 0x0c, 0x64, 0xb5, 0x18, 0xc8, 0xf7, 0x0c, 0xb8, 0x2e, 0x3f, 0xfe, 0x88, 0x8b, 0xc1, 0x25,
+ 0x30, 0x3e, 0xc6, 0xab, 0x52, 0x8a, 0xd7, 0x0d, 0x58, 0xe8, 0xf9, 0xe3, 0xb1, 0x17, 0x39, 0x5e,
+ 0x9f, 0x9c, 0xaa, 0xa3, 0xe0, 0xcd, 0xbe, 0x8c, 0x88, 0xea, 0x1b, 0x4d, 0x7c, 0xaa, 0x67, 0xa5,
+ 0xd8, 0xb1, 0x17, 0xe1, 0x9a, 0x1b, 0x04, 0xa3, 0xd3, 0x96, 0xa9, 0x20, 0xc0, 0x07, 0xeb, 0x57,
+ 0x34, 0x91, 0xb5, 0xa8, 0x08, 0x54, 0xcd, 0x01, 0x23, 0xe3, 0xc0, 0x36, 0x2c, 0xd1, 0x8c, 0x9d,
+ 0xaa, 0x62, 0x42, 0x89, 0x5f, 0x8b, 0x03, 0x79, 0x1c, 0xaf, 0x3b, 0x68, 0x14, 0x2b, 0x8e, 0xdd,
+ 0x38, 0x4a, 0x3d, 0x15, 0xc3, 0x5f, 0x2b, 0x84, 0xff, 0xad, 0x5a, 0xbd, 0xd2, 0xac, 0x5a, 0x7f,
+ 0x35, 0x90, 0x01, 0xca, 0xdd, 0x43, 0xdf, 0xe6, 0xc7, 0x57, 0x9b, 0x83, 0x35, 0x80, 0xd0, 0x9f,
+ 0x8a, 0x1e, 0x77, 0xc2, 0xa1, 0x4b, 0x49, 0x58, 0x40, 0xc9, 0x93, 0xa1, 0x5b, 0x9a, 0x85, 0x35,
+ 0x80, 0x84, 0xea, 0xc7, 0x94, 0x88, 0x85, 0x98, 0xe5, 0xc7, 0xe9, 0x24, 0x99, 0x3a, 0xc1, 0xdd,
+ 0x14, 0xc7, 0x28, 0xbc, 0xf3, 0x24, 0xe3, 0x22, 0xab, 0xd8, 0xb7, 0xe0, 0xa5, 0xc2, 0xdc, 0x9c,
+ 0xfd, 0x85, 0x57, 0xa1, 0x21, 0x81, 0x73, 0x7a, 0x6a, 0xea, 0xf5, 0x69, 0x1e, 0x2d, 0x4a, 0x19,
+ 0xce, 0xc6, 0x3e, 0xbb, 0x0d, 0xcb, 0xc4, 0x88, 0x58, 0xa9, 0xaa, 0x94, 0x88, 0x27, 0xa4, 0x66,
+ 0xfd, 0xcc, 0x80, 0x17, 0x64, 0x8c, 0x7b, 0x7b, 0xcf, 0xeb, 0x24, 0xb2, 0xbe, 0x4b, 0x35, 0x73,
+ 0xe6, 0x22, 0x25, 0x21, 0x47, 0x7a, 0xe3, 0x92, 0x48, 0x5f, 0x92, 0xab, 0xdf, 0x57, 0xa8, 0xe0,
+ 0x0d, 0xb9, 0x10, 0xa7, 0x07, 0x5e, 0xef, 0xeb, 0x57, 0x8b, 0xd6, 0x5d, 0x30, 0x11, 0x1c, 0x9a,
+ 0xcd, 0xab, 0xb1, 0xce, 0x67, 0xbd, 0x68, 0x47, 0x0d, 0xd8, 0xa4, 0x90, 0x5d, 0xb1, 0x6b, 0xb9,
+ 0x15, 0xbb, 0xbc, 0x12, 0xdd, 0x83, 0x55, 0x6c, 0xec, 0xd2, 0x06, 0x70, 0x22, 0xac, 0xa8, 0x81,
+ 0xed, 0x99, 0x95, 0x37, 0xa0, 0x89, 0xba, 0xa9, 0x68, 0xe7, 0x4b, 0xa3, 0xc5, 0xd7, 0x67, 0x02,
+ 0xeb, 0x2f, 0x54, 0xb4, 0xd3, 0x00, 0x5e, 0x6e, 0x2e, 0x91, 0xeb, 0x4e, 0x24, 0x78, 0x26, 0x97,
+ 0x38, 0x70, 0x28, 0x38, 0xe6, 0x52, 0xce, 0x20, 0x62, 0x62, 0x7a, 0x99, 0x59, 0x44, 0x19, 0xaa,
+ 0x5c, 0xa0, 0x1e, 0x5a, 0xbf, 0xad, 0xc0, 0xaa, 0xca, 0x1c, 0x3f, 0xe1, 0x32, 0xe4, 0xff, 0xd3,
+ 0xe2, 0x02, 0xb4, 0x78, 0xcf, 0x00, 0x96, 0x06, 0xef, 0x7f, 0x83, 0x12, 0xff, 0xa8, 0xc0, 0x0d,
+ 0x45, 0x76, 0xf5, 0xfe, 0x9e, 0x37, 0xe2, 0xe1, 0xc3, 0x9e, 0x74, 0x77, 0x9f, 0xbb, 0x7d, 0x2e,
+ 0xd8, 0x1e, 0x98, 0xae, 0x7a, 0x56, 0x71, 0x2d, 0x3f, 0xe8, 0xa4, 0x53, 0x5d, 0xf2, 0x52, 0x07,
+ 0x1f, 0x0e, 0x4f, 0x03, 0x6e, 0xd3, 0xdb, 0xb2, 0xa6, 0x1e, 0x7b, 0x23, 0xee, 0x04, 0x6e, 0x34,
+ 0xa4, 0x36, 0xb0, 0x2e, 0x05, 0x07, 0x6e, 0x34, 0x64, 0x9b, 0xb0, 0x14, 0xc8, 0xfe, 0xce, 0x9f,
+ 0x86, 0xa8, 0x50, 0x55, 0x0a, 0x8d, 0x58, 0xa8, 0x94, 0xe4, 0x52, 0xe1, 0x86, 0xfc, 0x13, 0x1f,
+ 0x77, 0x7a, 0xfe, 0x24, 0xe2, 0xb4, 0xbb, 0x93, 0x4b, 0x85, 0x92, 0xee, 0xa0, 0x90, 0xdd, 0x85,
+ 0x26, 0x7f, 0xc6, 0x7b, 0xd3, 0x88, 0x3b, 0xd2, 0xfe, 0xd8, 0xef, 0x23, 0x69, 0xea, 0xf6, 0x0a,
+ 0xc9, 0xf7, 0x48, 0x2c, 0x3f, 0xeb, 0x4d, 0x8e, 0xb9, 0x48, 0x0c, 0x62, 0x97, 0xd3, 0x50, 0x42,
+ 0xb2, 0x67, 0x3d, 0x05, 0x98, 0x85, 0xc3, 0x00, 0xcc, 0x1d, 0xbb, 0xfb, 0xf0, 0xb0, 0xdb, 0x9c,
+ 0x63, 0xcb, 0x00, 0xf8, 0xdb, 0xd9, 0x7d, 0xd3, 0x6e, 0x1a, 0x72, 0xec, 0xe9, 0xc1, 0xae, 0x1c,
+ 0xab, 0xb0, 0x3a, 0xd4, 0x1e, 0x3d, 0xfe, 0x62, 0xb7, 0x59, 0x95, 0xd2, 0xdd, 0xee, 0xe7, 0xbb,
+ 0x87, 0xdd, 0x66, 0x8d, 0x2d, 0xc0, 0xb5, 0x9d, 0xfd, 0x47, 0x8f, 0x77, 0x9b, 0xd7, 0xac, 0x1f,
+ 0x52, 0x53, 0x92, 0x83, 0x90, 0xbd, 0x01, 0xe6, 0x50, 0xc1, 0x48, 0x4c, 0xda, 0x3c, 0x07, 0xe2,
+ 0xfb, 0x73, 0x36, 0xbd, 0xc4, 0xda, 0x30, 0x1f, 0x87, 0xa3, 0x60, 0xde, 0x9f, 0xb3, 0x63, 0xc1,
+ 0xb6, 0x05, 0x1b, 0x72, 0x6e, 0x3a, 0x44, 0x20, 0x89, 0x4f, 0xe8, 0x60, 0x82, 0x9c, 0xc0, 0x3d,
+ 0x1d, 0xf9, 0x6e, 0xdf, 0xfa, 0x49, 0x15, 0x6e, 0x66, 0xbe, 0x44, 0x85, 0x82, 0x18, 0x71, 0x35,
+ 0xe5, 0x22, 0x53, 0x03, 0xaa, 0xb9, 0x1a, 0x70, 0x1b, 0x96, 0xc9, 0xed, 0xb8, 0x14, 0x60, 0x9d,
+ 0x58, 0x42, 0xe9, 0x23, 0x2a, 0x08, 0x1f, 0x05, 0x46, 0x6a, 0xee, 0x34, 0x1a, 0xfa, 0x02, 0xcd,
+ 0x61, 0xd5, 0x68, 0xe2, 0xc8, 0x43, 0x35, 0xa0, 0x8c, 0x76, 0xe0, 0x05, 0x5d, 0x9b, 0x8f, 0x5d,
+ 0x6f, 0x44, 0x05, 0x64, 0x35, 0xad, 0xde, 0x95, 0x03, 0xc5, 0xe5, 0x66, 0xfe, 0xfc, 0xe5, 0xa6,
+ 0x7e, 0xee, 0x72, 0x23, 0x5b, 0xef, 0x63, 0x5f, 0xf4, 0x78, 0x6b, 0x01, 0x5b, 0x6f, 0xf5, 0x60,
+ 0xfd, 0x26, 0x5e, 0x9b, 0x72, 0xd9, 0x61, 0x9f, 0xce, 0xf0, 0xe6, 0x56, 0x09, 0x6f, 0xb4, 0x6c,
+ 0xa6, 0x88, 0xf3, 0xc9, 0x64, 0xa6, 0x57, 0xf4, 0x0a, 0x56, 0xcc, 0xbb, 0xb9, 0x78, 0x6a, 0x6f,
+ 0x6f, 0xc2, 0xab, 0x79, 0x56, 0x09, 0xfc, 0x4a, 0x42, 0xab, 0x5f, 0xc6, 0x67, 0x45, 0x69, 0x47,
+ 0x2e, 0xb1, 0x84, 0xae, 0xc3, 0xa2, 0x37, 0xe9, 0xf3, 0x67, 0x5a, 0xf1, 0x04, 0x25, 0x3a, 0xa3,
+ 0x28, 0x96, 0x6c, 0xdb, 0x7e, 0x91, 0xac, 0x93, 0xb2, 0xb6, 0x5c, 0x79, 0xb3, 0x29, 0xd4, 0x67,
+ 0x52, 0xcd, 0x26, 0x0a, 0xce, 0xd8, 0xb1, 0xad, 0x01, 0x4d, 0x0d, 0xb5, 0xc5, 0xb8, 0x86, 0x5b,
+ 0x0c, 0x94, 0xc8, 0x2d, 0xc6, 0x67, 0x60, 0x55, 0xf0, 0xb1, 0x1f, 0xf1, 0x34, 0xf7, 0xcc, 0x52,
+ 0x87, 0x9b, 0xa8, 0x9c, 0x22, 0xdf, 0x26, 0x2c, 0x91, 0x01, 0xfa, 0x3c, 0x72, 0xbc, 0x81, 0x42,
+ 0x4c, 0xc3, 0xa7, 0x2a, 0x2d, 0xc3, 0xfa, 0x76, 0xb2, 0x28, 0x22, 0x52, 0xc9, 0xd6, 0x1a, 0x28,
+ 0x28, 0xe9, 0x1f, 0xee, 0x0b, 0x28, 0x4c, 0xe9, 0xdf, 0x05, 0xda, 0x59, 0x89, 0xcf, 0x20, 0xb3,
+ 0xd8, 0xd5, 0x07, 0xb4, 0xd2, 0x29, 0x17, 0xfe, 0x48, 0x05, 0x0b, 0x5d, 0xd8, 0xf1, 0x27, 0xc7,
+ 0x9e, 0x18, 0xbb, 0x47, 0xa3, 0x24, 0x6f, 0xdd, 0xcc, 0xc4, 0xf8, 0x88, 0x96, 0x85, 0x92, 0xb7,
+ 0x3a, 0xb9, 0xf9, 0x71, 0x3d, 0xde, 0x0b, 0xab, 0x6d, 0xcc, 0xfe, 0x1c, 0xed, 0x86, 0xdb, 0x3f,
+ 0xae, 0x80, 0x79, 0xa5, 0xa5, 0xf1, 0xbf, 0x96, 0x21, 0xdb, 0x77, 0xe1, 0x8e, 0xaa, 0x0c, 0xe4,
+ 0x7e, 0x6f, 0x86, 0x72, 0xae, 0x3e, 0xfc, 0xcd, 0x80, 0xb5, 0x92, 0x7c, 0x10, 0xa7, 0xd6, 0xf3,
+ 0x9c, 0xda, 0x9f, 0x4b, 0xb3, 0xea, 0x0e, 0x2c, 0x93, 0x82, 0x4c, 0x8c, 0x17, 0x6f, 0x38, 0xf7,
+ 0xe7, 0xec, 0x25, 0x94, 0x3f, 0x44, 0xf1, 0x45, 0x4a, 0x81, 0x4e, 0xbf, 0x9a, 0x4e, 0xbf, 0xed,
+ 0x7b, 0xb0, 0x55, 0x1e, 0x1f, 0xba, 0x9d, 0x04, 0xf8, 0x73, 0xaa, 0x29, 0x4f, 0xde, 0x9d, 0xba,
+ 0xe1, 0xd5, 0x6f, 0x60, 0x43, 0xf5, 0x99, 0x14, 0x63, 0x50, 0x70, 0x06, 0x63, 0xe4, 0x4b, 0x6a,
+ 0xbd, 0x9a, 0x11, 0xa6, 0xae, 0x04, 0x12, 0xdb, 0x97, 0x61, 0x9e, 0x4f, 0xfa, 0x6a, 0xc8, 0x54,
+ 0x43, 0x26, 0x9f, 0xf4, 0xe5, 0xc0, 0x2d, 0x30, 0x71, 0xe9, 0xa4, 0x56, 0x5a, 0x77, 0x87, 0xc6,
+ 0x0a, 0x16, 0xef, 0x7a, 0xc1, 0xe2, 0x6d, 0x79, 0x58, 0x4c, 0x62, 0x88, 0x66, 0xc5, 0x84, 0xa2,
+ 0x49, 0x15, 0x13, 0x94, 0x48, 0x0f, 0xce, 0x2a, 0x10, 0x78, 0x02, 0x64, 0xe7, 0xd3, 0x6d, 0xfd,
+ 0x94, 0x76, 0xc9, 0x92, 0x13, 0xa7, 0x07, 0x6e, 0x34, 0x3b, 0x53, 0x38, 0x73, 0x1d, 0xcd, 0xa9,
+ 0x77, 0x8a, 0x1a, 0xb0, 0x40, 0x2a, 0xf0, 0x70, 0xd6, 0x80, 0x91, 0xa0, 0xfd, 0x1d, 0xe3, 0x8a,
+ 0x6b, 0xc5, 0x26, 0x2c, 0xd1, 0x21, 0x12, 0xe5, 0x98, 0x3a, 0x69, 0x14, 0xd2, 0xb4, 0x8c, 0xdb,
+ 0x40, 0x55, 0xbf, 0x1c, 0xe5, 0x5b, 0x6e, 0x3e, 0xbe, 0x83, 0x7d, 0x46, 0x3a, 0xde, 0xcb, 0x5b,
+ 0xad, 0xad, 0xbf, 0x1b, 0xd0, 0x9e, 0xdd, 0x29, 0x3c, 0x99, 0x1e, 0x8d, 0xfd, 0xfe, 0x74, 0xc4,
+ 0xaf, 0xfc, 0x5c, 0x8e, 0x48, 0x98, 0x3a, 0x97, 0x43, 0xc9, 0x59, 0xe7, 0x72, 0x37, 0x61, 0x21,
+ 0x8c, 0x1d, 0x8c, 0x8f, 0xe5, 0x12, 0x41, 0x01, 0xb3, 0xcd, 0x22, 0x66, 0xff, 0xc9, 0xc0, 0x6d,
+ 0x56, 0x2e, 0xe0, 0x0f, 0xe6, 0x90, 0x28, 0xb7, 0x8b, 0xac, 0xe5, 0x76, 0x91, 0x6f, 0xd5, 0xea,
+ 0xd5, 0x66, 0xcd, 0xce, 0x6f, 0x4c, 0x1f, 0xfc, 0x6e, 0x11, 0x9a, 0x89, 0x3f, 0x4f, 0xb8, 0x38,
+ 0xf1, 0x7a, 0x9c, 0x7d, 0x15, 0x9a, 0xd9, 0x7b, 0x35, 0xb6, 0xae, 0x75, 0x90, 0xf9, 0x4b, 0xc2,
+ 0xf6, 0x46, 0xb9, 0x02, 0xe2, 0x62, 0x99, 0xff, 0xfc, 0xd1, 0x56, 0xa5, 0x6e, 0xc4, 0xe6, 0xd3,
+ 0x77, 0x50, 0xba, 0xf9, 0x82, 0xfb, 0x35, 0xdd, 0x7c, 0xd1, 0xf5, 0x55, 0xd6, 0x7c, 0xfa, 0x1e,
+ 0x48, 0x37, 0x5f, 0x70, 0x67, 0xa5, 0x9b, 0x2f, 0xba, 0x42, 0x4a, 0xcc, 0x1f, 0xc2, 0x92, 0x76,
+ 0x05, 0xc1, 0x6e, 0xe6, 0x03, 0x9f, 0xdd, 0xb2, 0xb4, 0xd7, 0x4a, 0x46, 0x8b, 0xad, 0x26, 0x57,
+ 0x3d, 0xba, 0xd5, 0xec, 0x55, 0x94, 0x6e, 0x35, 0x77, 0x3f, 0x94, 0x58, 0xfd, 0x12, 0x2c, 0xeb,
+ 0xa7, 0xc9, 0x4c, 0x7b, 0x31, 0x77, 0x88, 0xde, 0xfe, 0x50, 0xd9, 0x70, 0xc6, 0xf0, 0xd7, 0x60,
+ 0x25, 0x73, 0x69, 0xc0, 0xf2, 0xaf, 0xea, 0x08, 0xaf, 0x97, 0x8e, 0xeb, 0xb6, 0xb7, 0x8c, 0xd7,
+ 0x0d, 0xf6, 0x05, 0x68, 0xa4, 0xcf, 0x5f, 0xd9, 0x8d, 0xf4, 0xcb, 0x99, 0x83, 0xe3, 0xf6, 0xcd,
+ 0xe2, 0xc1, 0x62, 0x2c, 0x66, 0x07, 0x81, 0x3a, 0x16, 0xb9, 0x13, 0x56, 0x1d, 0x8b, 0xfc, 0xf9,
+ 0x61, 0x62, 0xf8, 0x1d, 0xc4, 0x22, 0xb5, 0x19, 0xd2, 0xb1, 0xc8, 0x6f, 0xd7, 0x74, 0x2c, 0x0a,
+ 0x76, 0x51, 0x33, 0x2c, 0xd8, 0xdb, 0x00, 0xb3, 0x56, 0x8a, 0xbd, 0x92, 0x6f, 0x77, 0x63, 0x9b,
+ 0xed, 0xa2, 0x21, 0x32, 0xb7, 0x80, 0xe6, 0xbe, 0x5f, 0x31, 0x58, 0x80, 0x4b, 0x65, 0xae, 0x35,
+ 0x63, 0xb7, 0xce, 0xd3, 0x49, 0xb7, 0x6f, 0xff, 0x1b, 0xad, 0x82, 0x5c, 0x7e, 0x2e, 0x8e, 0xe0,
+ 0x84, 0x8b, 0x28, 0x1b, 0x41, 0xea, 0xec, 0x32, 0x1b, 0x41, 0xfa, 0x64, 0x2e, 0x01, 0x9b, 0x8c,
+ 0x61, 0x57, 0xa1, 0x1b, 0xd3, 0x9a, 0x31, 0xdd, 0x98, 0xde, 0x84, 0x24, 0xc6, 0xbe, 0x8c, 0x94,
+ 0x98, 0xad, 0x8b, 0x3a, 0x25, 0x72, 0xfd, 0x81, 0x4e, 0x89, 0xfc, 0x72, 0x9a, 0x4a, 0xdb, 0x31,
+ 0xde, 0x71, 0x64, 0x96, 0x08, 0x66, 0xe5, 0xab, 0x58, 0x76, 0xc1, 0x6c, 0x6f, 0x9e, 0xa9, 0xa3,
+ 0x7f, 0x69, 0xfb, 0xf5, 0xaf, 0x48, 0xed, 0x91, 0x7b, 0xd4, 0xe9, 0xf9, 0xe3, 0xfb, 0xf8, 0xf3,
+ 0x35, 0x5f, 0x0c, 0xee, 0xa3, 0x8d, 0xd7, 0xd4, 0x9f, 0x3b, 0xee, 0x0f, 0x7c, 0x7a, 0x0e, 0x8e,
+ 0x8e, 0x4c, 0x25, 0xfa, 0xd8, 0xbf, 0x02, 0x00, 0x00, 0xff, 0xff, 0x3c, 0x2b, 0x37, 0x92, 0x19,
+ 0x22, 0x00, 0x00,
}
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/protolist.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/protolist.go
new file mode 100644
index 000000000..c85049d62
--- /dev/null
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/protolist.go
@@ -0,0 +1,24 @@
+package gitalypb
+
+// Code generated by protoc-gen-gitaly. DO NOT EDIT
+
+// GitalyProtos is a list of gitaly protobuf files
+var GitalyProtos = []string{
+ "blob.proto",
+ "cleanup.proto",
+ "commit.proto",
+ "conflicts.proto",
+ "diff.proto",
+ "namespace.proto",
+ "objectpool.proto",
+ "operations.proto",
+ "ref.proto",
+ "remote.proto",
+ "repository-service.proto",
+ "server.proto",
+ "shared.proto",
+ "smarthttp.proto",
+ "ssh.proto",
+ "storage.proto",
+ "wiki.proto",
+}
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/ref.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/ref.pb.go
index 8f5d8a870..5f2e608a6 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/ref.pb.go
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/ref.pb.go
@@ -47,7 +47,7 @@ func (x FindLocalBranchesRequest_SortBy) String() string {
return proto.EnumName(FindLocalBranchesRequest_SortBy_name, int32(x))
}
func (FindLocalBranchesRequest_SortBy) EnumDescriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{10, 0}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{10, 0}
}
type CreateBranchResponse_Status int32
@@ -76,7 +76,7 @@ func (x CreateBranchResponse_Status) String() string {
return proto.EnumName(CreateBranchResponse_Status_name, int32(x))
}
func (CreateBranchResponse_Status) EnumDescriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{21, 0}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{21, 0}
}
type ListNewBlobsRequest struct {
@@ -94,7 +94,7 @@ func (m *ListNewBlobsRequest) Reset() { *m = ListNewBlobsRequest{} }
func (m *ListNewBlobsRequest) String() string { return proto.CompactTextString(m) }
func (*ListNewBlobsRequest) ProtoMessage() {}
func (*ListNewBlobsRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{0}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{0}
}
func (m *ListNewBlobsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListNewBlobsRequest.Unmarshal(m, b)
@@ -146,7 +146,7 @@ func (m *ListNewBlobsResponse) Reset() { *m = ListNewBlobsResponse{} }
func (m *ListNewBlobsResponse) String() string { return proto.CompactTextString(m) }
func (*ListNewBlobsResponse) ProtoMessage() {}
func (*ListNewBlobsResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{1}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{1}
}
func (m *ListNewBlobsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListNewBlobsResponse.Unmarshal(m, b)
@@ -184,7 +184,7 @@ func (m *FindDefaultBranchNameRequest) Reset() { *m = FindDefaultBranchN
func (m *FindDefaultBranchNameRequest) String() string { return proto.CompactTextString(m) }
func (*FindDefaultBranchNameRequest) ProtoMessage() {}
func (*FindDefaultBranchNameRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{2}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{2}
}
func (m *FindDefaultBranchNameRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindDefaultBranchNameRequest.Unmarshal(m, b)
@@ -222,7 +222,7 @@ func (m *FindDefaultBranchNameResponse) Reset() { *m = FindDefaultBranch
func (m *FindDefaultBranchNameResponse) String() string { return proto.CompactTextString(m) }
func (*FindDefaultBranchNameResponse) ProtoMessage() {}
func (*FindDefaultBranchNameResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{3}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{3}
}
func (m *FindDefaultBranchNameResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindDefaultBranchNameResponse.Unmarshal(m, b)
@@ -260,7 +260,7 @@ func (m *FindAllBranchNamesRequest) Reset() { *m = FindAllBranchNamesReq
func (m *FindAllBranchNamesRequest) String() string { return proto.CompactTextString(m) }
func (*FindAllBranchNamesRequest) ProtoMessage() {}
func (*FindAllBranchNamesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{4}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{4}
}
func (m *FindAllBranchNamesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindAllBranchNamesRequest.Unmarshal(m, b)
@@ -298,7 +298,7 @@ func (m *FindAllBranchNamesResponse) Reset() { *m = FindAllBranchNamesRe
func (m *FindAllBranchNamesResponse) String() string { return proto.CompactTextString(m) }
func (*FindAllBranchNamesResponse) ProtoMessage() {}
func (*FindAllBranchNamesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{5}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{5}
}
func (m *FindAllBranchNamesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindAllBranchNamesResponse.Unmarshal(m, b)
@@ -336,7 +336,7 @@ func (m *FindAllTagNamesRequest) Reset() { *m = FindAllTagNamesRequest{}
func (m *FindAllTagNamesRequest) String() string { return proto.CompactTextString(m) }
func (*FindAllTagNamesRequest) ProtoMessage() {}
func (*FindAllTagNamesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{6}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{6}
}
func (m *FindAllTagNamesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindAllTagNamesRequest.Unmarshal(m, b)
@@ -374,7 +374,7 @@ func (m *FindAllTagNamesResponse) Reset() { *m = FindAllTagNamesResponse
func (m *FindAllTagNamesResponse) String() string { return proto.CompactTextString(m) }
func (*FindAllTagNamesResponse) ProtoMessage() {}
func (*FindAllTagNamesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{7}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{7}
}
func (m *FindAllTagNamesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindAllTagNamesResponse.Unmarshal(m, b)
@@ -416,7 +416,7 @@ func (m *FindRefNameRequest) Reset() { *m = FindRefNameRequest{} }
func (m *FindRefNameRequest) String() string { return proto.CompactTextString(m) }
func (*FindRefNameRequest) ProtoMessage() {}
func (*FindRefNameRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{8}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{8}
}
func (m *FindRefNameRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindRefNameRequest.Unmarshal(m, b)
@@ -469,7 +469,7 @@ func (m *FindRefNameResponse) Reset() { *m = FindRefNameResponse{} }
func (m *FindRefNameResponse) String() string { return proto.CompactTextString(m) }
func (*FindRefNameResponse) ProtoMessage() {}
func (*FindRefNameResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{9}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{9}
}
func (m *FindRefNameResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindRefNameResponse.Unmarshal(m, b)
@@ -508,7 +508,7 @@ func (m *FindLocalBranchesRequest) Reset() { *m = FindLocalBranchesReque
func (m *FindLocalBranchesRequest) String() string { return proto.CompactTextString(m) }
func (*FindLocalBranchesRequest) ProtoMessage() {}
func (*FindLocalBranchesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{10}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{10}
}
func (m *FindLocalBranchesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindLocalBranchesRequest.Unmarshal(m, b)
@@ -553,7 +553,7 @@ func (m *FindLocalBranchesResponse) Reset() { *m = FindLocalBranchesResp
func (m *FindLocalBranchesResponse) String() string { return proto.CompactTextString(m) }
func (*FindLocalBranchesResponse) ProtoMessage() {}
func (*FindLocalBranchesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{11}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{11}
}
func (m *FindLocalBranchesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindLocalBranchesResponse.Unmarshal(m, b)
@@ -595,7 +595,7 @@ func (m *FindLocalBranchResponse) Reset() { *m = FindLocalBranchResponse
func (m *FindLocalBranchResponse) String() string { return proto.CompactTextString(m) }
func (*FindLocalBranchResponse) ProtoMessage() {}
func (*FindLocalBranchResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{12}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{12}
}
func (m *FindLocalBranchResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindLocalBranchResponse.Unmarshal(m, b)
@@ -663,7 +663,7 @@ func (m *FindLocalBranchCommitAuthor) Reset() { *m = FindLocalBranchComm
func (m *FindLocalBranchCommitAuthor) String() string { return proto.CompactTextString(m) }
func (*FindLocalBranchCommitAuthor) ProtoMessage() {}
func (*FindLocalBranchCommitAuthor) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{13}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{13}
}
func (m *FindLocalBranchCommitAuthor) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindLocalBranchCommitAuthor.Unmarshal(m, b)
@@ -720,7 +720,7 @@ func (m *FindAllBranchesRequest) Reset() { *m = FindAllBranchesRequest{}
func (m *FindAllBranchesRequest) String() string { return proto.CompactTextString(m) }
func (*FindAllBranchesRequest) ProtoMessage() {}
func (*FindAllBranchesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{14}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{14}
}
func (m *FindAllBranchesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindAllBranchesRequest.Unmarshal(m, b)
@@ -772,7 +772,7 @@ func (m *FindAllBranchesResponse) Reset() { *m = FindAllBranchesResponse
func (m *FindAllBranchesResponse) String() string { return proto.CompactTextString(m) }
func (*FindAllBranchesResponse) ProtoMessage() {}
func (*FindAllBranchesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{15}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{15}
}
func (m *FindAllBranchesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindAllBranchesResponse.Unmarshal(m, b)
@@ -811,7 +811,7 @@ func (m *FindAllBranchesResponse_Branch) Reset() { *m = FindAllBranchesR
func (m *FindAllBranchesResponse_Branch) String() string { return proto.CompactTextString(m) }
func (*FindAllBranchesResponse_Branch) ProtoMessage() {}
func (*FindAllBranchesResponse_Branch) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{15, 0}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{15, 0}
}
func (m *FindAllBranchesResponse_Branch) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindAllBranchesResponse_Branch.Unmarshal(m, b)
@@ -856,7 +856,7 @@ func (m *FindAllTagsRequest) Reset() { *m = FindAllTagsRequest{} }
func (m *FindAllTagsRequest) String() string { return proto.CompactTextString(m) }
func (*FindAllTagsRequest) ProtoMessage() {}
func (*FindAllTagsRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{16}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{16}
}
func (m *FindAllTagsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindAllTagsRequest.Unmarshal(m, b)
@@ -894,7 +894,7 @@ func (m *FindAllTagsResponse) Reset() { *m = FindAllTagsResponse{} }
func (m *FindAllTagsResponse) String() string { return proto.CompactTextString(m) }
func (*FindAllTagsResponse) ProtoMessage() {}
func (*FindAllTagsResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{17}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{17}
}
func (m *FindAllTagsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindAllTagsResponse.Unmarshal(m, b)
@@ -934,7 +934,7 @@ func (m *RefExistsRequest) Reset() { *m = RefExistsRequest{} }
func (m *RefExistsRequest) String() string { return proto.CompactTextString(m) }
func (*RefExistsRequest) ProtoMessage() {}
func (*RefExistsRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{18}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{18}
}
func (m *RefExistsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RefExistsRequest.Unmarshal(m, b)
@@ -979,7 +979,7 @@ func (m *RefExistsResponse) Reset() { *m = RefExistsResponse{} }
func (m *RefExistsResponse) String() string { return proto.CompactTextString(m) }
func (*RefExistsResponse) ProtoMessage() {}
func (*RefExistsResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{19}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{19}
}
func (m *RefExistsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RefExistsResponse.Unmarshal(m, b)
@@ -1019,7 +1019,7 @@ func (m *CreateBranchRequest) Reset() { *m = CreateBranchRequest{} }
func (m *CreateBranchRequest) String() string { return proto.CompactTextString(m) }
func (*CreateBranchRequest) ProtoMessage() {}
func (*CreateBranchRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{20}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{20}
}
func (m *CreateBranchRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateBranchRequest.Unmarshal(m, b)
@@ -1072,7 +1072,7 @@ func (m *CreateBranchResponse) Reset() { *m = CreateBranchResponse{} }
func (m *CreateBranchResponse) String() string { return proto.CompactTextString(m) }
func (*CreateBranchResponse) ProtoMessage() {}
func (*CreateBranchResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{21}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{21}
}
func (m *CreateBranchResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateBranchResponse.Unmarshal(m, b)
@@ -1118,7 +1118,7 @@ func (m *DeleteBranchRequest) Reset() { *m = DeleteBranchRequest{} }
func (m *DeleteBranchRequest) String() string { return proto.CompactTextString(m) }
func (*DeleteBranchRequest) ProtoMessage() {}
func (*DeleteBranchRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{22}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{22}
}
func (m *DeleteBranchRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteBranchRequest.Unmarshal(m, b)
@@ -1163,7 +1163,7 @@ func (m *DeleteBranchResponse) Reset() { *m = DeleteBranchResponse{} }
func (m *DeleteBranchResponse) String() string { return proto.CompactTextString(m) }
func (*DeleteBranchResponse) ProtoMessage() {}
func (*DeleteBranchResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{23}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{23}
}
func (m *DeleteBranchResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteBranchResponse.Unmarshal(m, b)
@@ -1196,7 +1196,7 @@ func (m *FindBranchRequest) Reset() { *m = FindBranchRequest{} }
func (m *FindBranchRequest) String() string { return proto.CompactTextString(m) }
func (*FindBranchRequest) ProtoMessage() {}
func (*FindBranchRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{24}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{24}
}
func (m *FindBranchRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindBranchRequest.Unmarshal(m, b)
@@ -1241,7 +1241,7 @@ func (m *FindBranchResponse) Reset() { *m = FindBranchResponse{} }
func (m *FindBranchResponse) String() string { return proto.CompactTextString(m) }
func (*FindBranchResponse) ProtoMessage() {}
func (*FindBranchResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{25}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{25}
}
func (m *FindBranchResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindBranchResponse.Unmarshal(m, b)
@@ -1282,7 +1282,7 @@ func (m *DeleteRefsRequest) Reset() { *m = DeleteRefsRequest{} }
func (m *DeleteRefsRequest) String() string { return proto.CompactTextString(m) }
func (*DeleteRefsRequest) ProtoMessage() {}
func (*DeleteRefsRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{26}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{26}
}
func (m *DeleteRefsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteRefsRequest.Unmarshal(m, b)
@@ -1334,7 +1334,7 @@ func (m *DeleteRefsResponse) Reset() { *m = DeleteRefsResponse{} }
func (m *DeleteRefsResponse) String() string { return proto.CompactTextString(m) }
func (*DeleteRefsResponse) ProtoMessage() {}
func (*DeleteRefsResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{27}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{27}
}
func (m *DeleteRefsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteRefsResponse.Unmarshal(m, b)
@@ -1378,7 +1378,7 @@ func (m *ListBranchNamesContainingCommitRequest) Reset() {
func (m *ListBranchNamesContainingCommitRequest) String() string { return proto.CompactTextString(m) }
func (*ListBranchNamesContainingCommitRequest) ProtoMessage() {}
func (*ListBranchNamesContainingCommitRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{28}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{28}
}
func (m *ListBranchNamesContainingCommitRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListBranchNamesContainingCommitRequest.Unmarshal(m, b)
@@ -1432,7 +1432,7 @@ func (m *ListBranchNamesContainingCommitResponse) Reset() {
func (m *ListBranchNamesContainingCommitResponse) String() string { return proto.CompactTextString(m) }
func (*ListBranchNamesContainingCommitResponse) ProtoMessage() {}
func (*ListBranchNamesContainingCommitResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{29}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{29}
}
func (m *ListBranchNamesContainingCommitResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListBranchNamesContainingCommitResponse.Unmarshal(m, b)
@@ -1474,7 +1474,7 @@ func (m *ListTagNamesContainingCommitRequest) Reset() { *m = ListTagName
func (m *ListTagNamesContainingCommitRequest) String() string { return proto.CompactTextString(m) }
func (*ListTagNamesContainingCommitRequest) ProtoMessage() {}
func (*ListTagNamesContainingCommitRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{30}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{30}
}
func (m *ListTagNamesContainingCommitRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListTagNamesContainingCommitRequest.Unmarshal(m, b)
@@ -1526,7 +1526,7 @@ func (m *ListTagNamesContainingCommitResponse) Reset() { *m = ListTagNam
func (m *ListTagNamesContainingCommitResponse) String() string { return proto.CompactTextString(m) }
func (*ListTagNamesContainingCommitResponse) ProtoMessage() {}
func (*ListTagNamesContainingCommitResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{31}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{31}
}
func (m *ListTagNamesContainingCommitResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListTagNamesContainingCommitResponse.Unmarshal(m, b)
@@ -1565,7 +1565,7 @@ func (m *GetTagMessagesRequest) Reset() { *m = GetTagMessagesRequest{} }
func (m *GetTagMessagesRequest) String() string { return proto.CompactTextString(m) }
func (*GetTagMessagesRequest) ProtoMessage() {}
func (*GetTagMessagesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{32}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{32}
}
func (m *GetTagMessagesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetTagMessagesRequest.Unmarshal(m, b)
@@ -1612,7 +1612,7 @@ func (m *GetTagMessagesResponse) Reset() { *m = GetTagMessagesResponse{}
func (m *GetTagMessagesResponse) String() string { return proto.CompactTextString(m) }
func (*GetTagMessagesResponse) ProtoMessage() {}
func (*GetTagMessagesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{33}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{33}
}
func (m *GetTagMessagesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetTagMessagesResponse.Unmarshal(m, b)
@@ -1658,7 +1658,7 @@ func (m *ListNewCommitsRequest) Reset() { *m = ListNewCommitsRequest{} }
func (m *ListNewCommitsRequest) String() string { return proto.CompactTextString(m) }
func (*ListNewCommitsRequest) ProtoMessage() {}
func (*ListNewCommitsRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{34}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{34}
}
func (m *ListNewCommitsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListNewCommitsRequest.Unmarshal(m, b)
@@ -1703,7 +1703,7 @@ func (m *ListNewCommitsResponse) Reset() { *m = ListNewCommitsResponse{}
func (m *ListNewCommitsResponse) String() string { return proto.CompactTextString(m) }
func (*ListNewCommitsResponse) ProtoMessage() {}
func (*ListNewCommitsResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{35}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{35}
}
func (m *ListNewCommitsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListNewCommitsResponse.Unmarshal(m, b)
@@ -1742,7 +1742,7 @@ func (m *FindAllRemoteBranchesRequest) Reset() { *m = FindAllRemoteBranc
func (m *FindAllRemoteBranchesRequest) String() string { return proto.CompactTextString(m) }
func (*FindAllRemoteBranchesRequest) ProtoMessage() {}
func (*FindAllRemoteBranchesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{36}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{36}
}
func (m *FindAllRemoteBranchesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindAllRemoteBranchesRequest.Unmarshal(m, b)
@@ -1787,7 +1787,7 @@ func (m *FindAllRemoteBranchesResponse) Reset() { *m = FindAllRemoteBran
func (m *FindAllRemoteBranchesResponse) String() string { return proto.CompactTextString(m) }
func (*FindAllRemoteBranchesResponse) ProtoMessage() {}
func (*FindAllRemoteBranchesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{37}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{37}
}
func (m *FindAllRemoteBranchesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindAllRemoteBranchesResponse.Unmarshal(m, b)
@@ -1826,7 +1826,7 @@ func (m *PackRefsRequest) Reset() { *m = PackRefsRequest{} }
func (m *PackRefsRequest) String() string { return proto.CompactTextString(m) }
func (*PackRefsRequest) ProtoMessage() {}
func (*PackRefsRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{38}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{38}
}
func (m *PackRefsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PackRefsRequest.Unmarshal(m, b)
@@ -1870,7 +1870,7 @@ func (m *PackRefsResponse) Reset() { *m = PackRefsResponse{} }
func (m *PackRefsResponse) String() string { return proto.CompactTextString(m) }
func (*PackRefsResponse) ProtoMessage() {}
func (*PackRefsResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ref_f2115157855aba0a, []int{39}
+ return fileDescriptor_ref_3e762b6865bf84bd, []int{39}
}
func (m *PackRefsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PackRefsResponse.Unmarshal(m, b)
@@ -2906,112 +2906,111 @@ var _RefService_serviceDesc = grpc.ServiceDesc{
Metadata: "ref.proto",
}
-func init() { proto.RegisterFile("ref.proto", fileDescriptor_ref_f2115157855aba0a) }
-
-var fileDescriptor_ref_f2115157855aba0a = []byte{
- // 1652 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x58, 0x4b, 0x73, 0xdb, 0x46,
- 0x12, 0x16, 0x28, 0x89, 0x22, 0x9b, 0x34, 0x05, 0x8d, 0x5e, 0x14, 0x64, 0x5b, 0x32, 0xfc, 0x92,
- 0xd7, 0x36, 0xe5, 0xa5, 0x6b, 0xf7, 0xb0, 0xbb, 0x55, 0x5e, 0x4a, 0xe2, 0xda, 0xf2, 0x83, 0x52,
- 0x0d, 0xb9, 0xb6, 0xd7, 0xb5, 0x55, 0x08, 0x48, 0x0e, 0x21, 0x24, 0x20, 0xc1, 0x00, 0x23, 0xcb,
- 0xaa, 0x94, 0x6f, 0x89, 0x2f, 0x39, 0xb9, 0x2a, 0x55, 0xbe, 0xe5, 0x98, 0x3f, 0x93, 0x43, 0xfe,
- 0x4b, 0x7e, 0x41, 0x0a, 0x33, 0x83, 0x17, 0x09, 0x52, 0xaa, 0x50, 0xae, 0xe4, 0x44, 0x4e, 0x4f,
- 0xf7, 0x37, 0xdd, 0x3d, 0x3d, 0x3d, 0xdf, 0x00, 0xb2, 0x0e, 0xe9, 0x94, 0xfa, 0x8e, 0x4d, 0x6d,
- 0x94, 0x36, 0x4c, 0xaa, 0x5b, 0xa7, 0x0a, 0x34, 0x2d, 0xbb, 0xc9, 0x65, 0x4a, 0xde, 0x3d, 0xd2,
- 0x1d, 0xd2, 0x16, 0xa3, 0x0d, 0xc3, 0xb6, 0x0d, 0x8b, 0x6c, 0xb3, 0x51, 0xf3, 0xb8, 0xb3, 0x4d,
- 0xcd, 0x2e, 0x71, 0xa9, 0xde, 0xed, 0x73, 0x05, 0xf5, 0x5b, 0x09, 0x16, 0x9f, 0x9b, 0x2e, 0xad,
- 0x91, 0x93, 0x1d, 0xcb, 0x6e, 0xba, 0x98, 0x7c, 0x7d, 0x4c, 0x5c, 0x8a, 0xca, 0x00, 0x0e, 0xe9,
- 0xdb, 0xae, 0x49, 0x6d, 0xe7, 0xb4, 0x28, 0x6d, 0x4a, 0x5b, 0xb9, 0x32, 0x2a, 0xf1, 0xf5, 0x4a,
- 0x38, 0x98, 0xc1, 0x11, 0x2d, 0xb4, 0x0e, 0xd9, 0x96, 0xdd, 0xed, 0x9a, 0x54, 0x33, 0xdb, 0xc5,
- 0xd4, 0xa6, 0xb4, 0x95, 0xc5, 0x19, 0x2e, 0xd8, 0x6f, 0xa3, 0x25, 0x98, 0xb5, 0xcc, 0xae, 0x49,
- 0x8b, 0xd3, 0x9b, 0xd2, 0xd6, 0x25, 0xcc, 0x07, 0xff, 0x48, 0xff, 0xfa, 0x69, 0x2b, 0x95, 0x49,
- 0xa9, 0xaf, 0x60, 0x29, 0xee, 0x85, 0xdb, 0xb7, 0x7b, 0x2e, 0x41, 0x8f, 0x40, 0xee, 0x91, 0x13,
- 0xcd, 0x8b, 0x4f, 0xb3, 0x9b, 0x5f, 0x92, 0x16, 0x75, 0x8b, 0xd2, 0xe6, 0xf4, 0x56, 0xae, 0xbc,
- 0xec, 0x3b, 0x23, 0x6c, 0x0e, 0xd8, 0x2c, 0x2e, 0xf4, 0xa2, 0x43, 0x57, 0x7d, 0x03, 0x97, 0xff,
- 0x63, 0xf6, 0xda, 0x7b, 0xa4, 0xa3, 0x1f, 0x5b, 0x74, 0xc7, 0xd1, 0x7b, 0xad, 0xa3, 0x9a, 0xde,
- 0x25, 0x13, 0xc4, 0x19, 0x38, 0xfd, 0x10, 0xae, 0x8c, 0xc0, 0x16, 0xde, 0x23, 0x98, 0xe9, 0xe9,
- 0x5d, 0xc2, 0x60, 0xf3, 0x98, 0xfd, 0x57, 0x5f, 0xc1, 0x9a, 0x67, 0x54, 0xb1, 0xac, 0xd0, 0xc0,
- 0xbd, 0x08, 0x6f, 0xca, 0xa0, 0x24, 0x01, 0x0b, 0x57, 0x96, 0x60, 0xd6, 0x5b, 0x9e, 0x67, 0x2f,
- 0x8f, 0xf9, 0x40, 0x6d, 0xc0, 0x8a, 0xb0, 0x69, 0xe8, 0xc6, 0x85, 0x79, 0xb2, 0x0d, 0xab, 0x43,
- 0xa8, 0x63, 0xdd, 0xf8, 0x4e, 0x02, 0xe4, 0x59, 0x60, 0xd2, 0x99, 0x70, 0x6f, 0xc6, 0xd7, 0xe0,
- 0x0a, 0xa4, 0xfb, 0x0e, 0xe9, 0x98, 0xef, 0x58, 0x11, 0xe6, 0xb1, 0x18, 0x05, 0x8e, 0xdf, 0x81,
- 0xc5, 0x98, 0x1b, 0x63, 0xb6, 0xf1, 0x17, 0x09, 0x8a, 0x9e, 0xee, 0x73, 0xbb, 0xa5, 0x8b, 0x84,
- 0x4f, 0x94, 0x3c, 0xf4, 0x6f, 0x98, 0x73, 0x6d, 0x87, 0x6a, 0xcd, 0x53, 0xe6, 0x76, 0xa1, 0x7c,
- 0xdb, 0x37, 0x18, 0xb5, 0x4c, 0xa9, 0x6e, 0x3b, 0x74, 0xe7, 0x14, 0xa7, 0x5d, 0xf6, 0xab, 0xfe,
- 0x0d, 0xd2, 0x5c, 0x82, 0x32, 0x30, 0x53, 0xab, 0xbc, 0xa8, 0xca, 0x53, 0x68, 0x1e, 0x72, 0xff,
- 0x3d, 0xdc, 0xab, 0x34, 0xaa, 0x7b, 0x5a, 0xa5, 0xbe, 0x2b, 0x4b, 0x48, 0x86, 0xbc, 0x2f, 0xd8,
- 0xab, 0xd6, 0x77, 0xe5, 0x54, 0x10, 0xfc, 0x6b, 0x5e, 0x98, 0x03, 0x2b, 0x89, 0x14, 0xfc, 0x13,
- 0x32, 0x4d, 0x21, 0x13, 0xe7, 0x6f, 0x63, 0x84, 0x7b, 0xbe, 0x09, 0x0e, 0x0c, 0xd4, 0xef, 0x53,
- 0xbc, 0x20, 0x12, 0xb4, 0x92, 0x72, 0x3b, 0x7e, 0x0f, 0x6f, 0x42, 0x41, 0x4c, 0xba, 0xc7, 0xec,
- 0x8c, 0x8b, 0xbd, 0xbc, 0xc4, 0xa5, 0x75, 0x2e, 0x44, 0x4f, 0x40, 0x08, 0x34, 0xfd, 0x98, 0x1e,
- 0xd9, 0x4e, 0x71, 0x86, 0xed, 0xc2, 0xf5, 0x11, 0x5e, 0xef, 0x32, 0xdd, 0x0a, 0x53, 0xc5, 0xf9,
- 0x56, 0x64, 0x84, 0x6a, 0x20, 0x0b, 0x24, 0xfe, 0x43, 0x89, 0x53, 0x9c, 0x3d, 0x3f, 0xd8, 0x3c,
- 0xb7, 0xda, 0xf5, 0x6d, 0xd5, 0x13, 0x58, 0x1f, 0xa3, 0x9f, 0x98, 0x90, 0x25, 0x98, 0x25, 0x5d,
- 0xdd, 0xb4, 0x58, 0x32, 0xf2, 0x98, 0x0f, 0x50, 0x09, 0x66, 0xda, 0x3a, 0x25, 0x2c, 0xfe, 0x5c,
- 0x59, 0x29, 0xf1, 0x56, 0x5f, 0xf2, 0x5b, 0x7d, 0xa9, 0xe1, 0xb7, 0x7a, 0xcc, 0xf4, 0xd4, 0x1f,
- 0xa5, 0xe0, 0xb4, 0x5f, 0x44, 0xc1, 0x6e, 0x40, 0xae, 0x4b, 0x1c, 0x83, 0xb4, 0x35, 0xbb, 0x67,
- 0xf1, 0xa2, 0xcd, 0x60, 0xe0, 0xa2, 0x83, 0x9e, 0x75, 0x8a, 0x6e, 0xc3, 0xbc, 0x50, 0x08, 0x4a,
- 0x67, 0x9a, 0x9d, 0xfa, 0x02, 0x17, 0xfb, 0x4e, 0x04, 0x15, 0xf8, 0x93, 0x14, 0x34, 0x8e, 0xa1,
- 0x02, 0xdc, 0x19, 0x2a, 0xc0, 0x5b, 0xd1, 0xec, 0x27, 0x98, 0x94, 0x44, 0xa5, 0x05, 0x76, 0xca,
- 0x63, 0x48, 0x73, 0x59, 0x62, 0x92, 0xef, 0x40, 0x9a, 0xea, 0x8e, 0x41, 0x28, 0x0b, 0x25, 0x57,
- 0x5e, 0xf0, 0xf1, 0x1f, 0xfb, 0xbb, 0x87, 0x85, 0x82, 0x7a, 0xc8, 0xdb, 0x15, 0x6f, 0x70, 0x17,
- 0xd2, 0x32, 0xff, 0xce, 0x3b, 0x4f, 0x80, 0x28, 0xa2, 0xde, 0x80, 0x19, 0xaa, 0x1b, 0x7e, 0xc4,
- 0x39, 0x1f, 0xac, 0xa1, 0x1b, 0x98, 0x4d, 0xa8, 0x5f, 0x80, 0x8c, 0x49, 0xa7, 0xfa, 0xce, 0x74,
- 0xe9, 0x44, 0x9b, 0x29, 0xc3, 0xb4, 0x43, 0x3a, 0xa2, 0xbe, 0xbc, 0xbf, 0x91, 0x9e, 0xb8, 0x10,
- 0x59, 0x21, 0x6c, 0xe3, 0x6f, 0x75, 0xeb, 0x98, 0x27, 0x30, 0x83, 0xf9, 0x40, 0xfd, 0x20, 0xc1,
- 0xe2, 0xae, 0x43, 0x74, 0x4a, 0xfc, 0x43, 0xfe, 0xfb, 0x1d, 0xf2, 0x77, 0x28, 0x15, 0xd9, 0xa1,
- 0x0d, 0xc8, 0xb9, 0x54, 0x77, 0xa8, 0xd6, 0xb7, 0xcd, 0x9e, 0x7f, 0xee, 0x81, 0x89, 0x0e, 0x3d,
- 0x49, 0xe0, 0xf3, 0xcf, 0x12, 0x2c, 0xc5, 0x1d, 0x09, 0xda, 0x58, 0xda, 0xa5, 0x3a, 0x3d, 0x76,
- 0x99, 0x17, 0x85, 0xf0, 0x04, 0x27, 0x69, 0x97, 0xea, 0x4c, 0x15, 0x0b, 0x13, 0x74, 0x0b, 0xd2,
- 0xbc, 0x94, 0x44, 0x81, 0x14, 0x7c, 0x63, 0x61, 0x26, 0x66, 0xd5, 0x1a, 0xa4, 0xb9, 0x25, 0x4a,
- 0x43, 0xea, 0xe0, 0x99, 0x3c, 0x85, 0x0a, 0x00, 0x55, 0x8c, 0xb5, 0xea, 0xeb, 0xfd, 0x7a, 0xa3,
- 0x2e, 0x4b, 0x5e, 0x57, 0xf6, 0xc6, 0xfb, 0xb5, 0x97, 0x95, 0xe7, 0xfb, 0x7b, 0x72, 0x0a, 0xad,
- 0xc3, 0x6a, 0x44, 0xa0, 0xd5, 0x1b, 0x15, 0xdc, 0xd0, 0x0e, 0x0f, 0xf6, 0x6b, 0x0d, 0x79, 0x5a,
- 0x25, 0xb0, 0xb8, 0x47, 0x2c, 0xf2, 0x99, 0xb2, 0x1a, 0x24, 0x6d, 0x05, 0x96, 0xe2, 0xcb, 0xf0,
- 0x2c, 0xa8, 0x2d, 0x58, 0xf0, 0x4a, 0xf3, 0xf3, 0x2e, 0xfe, 0x2f, 0x7e, 0xa2, 0x06, 0xb6, 0x2b,
- 0xcc, 0xb8, 0x34, 0x36, 0xe3, 0x1f, 0x25, 0x58, 0xe0, 0xbe, 0x63, 0xd2, 0x99, 0xe8, 0x1c, 0xdc,
- 0x03, 0x44, 0xde, 0xb5, 0x48, 0x9f, 0x6a, 0x27, 0x26, 0x3d, 0xd2, 0x04, 0x5b, 0x48, 0xb1, 0xb6,
- 0x25, 0xf3, 0x99, 0x57, 0x26, 0x3d, 0x3a, 0x64, 0x72, 0x2f, 0x22, 0x87, 0x74, 0xfc, 0xb6, 0xc6,
- 0xfe, 0x07, 0x11, 0xfd, 0x15, 0x50, 0xd4, 0x25, 0x11, 0xd1, 0x3a, 0x64, 0x0d, 0x93, 0x6a, 0xc4,
- 0x71, 0x6c, 0x87, 0xb9, 0x94, 0xc5, 0x19, 0xc3, 0xa4, 0x55, 0x6f, 0xac, 0x7e, 0x92, 0xe0, 0x96,
- 0xc7, 0x82, 0x23, 0xfc, 0x6d, 0xd7, 0xee, 0x51, 0xdd, 0xec, 0x99, 0x3d, 0x43, 0xb4, 0xa0, 0x3f,
- 0x86, 0x9e, 0x63, 0xb8, 0x7d, 0xa6, 0x63, 0x22, 0xc2, 0x6b, 0x90, 0xe7, 0xbb, 0xa2, 0x71, 0xa2,
- 0xc7, 0x73, 0x97, 0x6b, 0x86, 0xa6, 0x4f, 0x67, 0x32, 0x92, 0x9c, 0x52, 0x7f, 0x90, 0xe0, 0xba,
- 0x07, 0xea, 0x73, 0xc4, 0x3f, 0x49, 0xa8, 0xfb, 0x70, 0x63, 0xbc, 0x57, 0xe1, 0x4e, 0x52, 0xdd,
- 0x88, 0x05, 0x99, 0xa1, 0xc2, 0x48, 0x44, 0xf8, 0x1e, 0x96, 0x1f, 0x13, 0x0f, 0xe9, 0x05, 0x71,
- 0x5d, 0xdd, 0x98, 0xec, 0xba, 0x5d, 0x85, 0x39, 0x6f, 0x3d, 0xb3, 0xcd, 0xcb, 0x2d, 0xeb, 0x5d,
- 0x46, 0xc6, 0x7e, 0x3b, 0x28, 0xb8, 0xa7, 0x33, 0x99, 0x94, 0x3c, 0x8d, 0x43, 0xa7, 0xd4, 0xff,
- 0xc1, 0xca, 0xe0, 0xf2, 0xc2, 0xf7, 0x22, 0xcc, 0x75, 0xb9, 0x4c, 0x1c, 0x46, 0x7f, 0x88, 0x96,
- 0xbd, 0x4b, 0xd0, 0x5b, 0x85, 0x25, 0x27, 0x8b, 0x67, 0xd9, 0x22, 0x3c, 0x1e, 0x16, 0x1f, 0xc3,
- 0x56, 0xfb, 0xb0, 0x2c, 0x9e, 0x6b, 0x3c, 0x2b, 0x9f, 0xed, 0xd9, 0x18, 0x6c, 0x4b, 0x15, 0x56,
- 0x06, 0x57, 0x14, 0xc1, 0xdc, 0x85, 0x39, 0xae, 0xed, 0x5f, 0x93, 0x09, 0x17, 0xb7, 0xaf, 0xa1,
- 0x7e, 0xc3, 0x9f, 0x83, 0x15, 0xcb, 0xc2, 0xa4, 0x6b, 0xfb, 0xbd, 0x6e, 0x62, 0x22, 0xe4, 0x30,
- 0x30, 0x2d, 0x68, 0x6f, 0x59, 0x4f, 0xc1, 0x13, 0xd5, 0xa2, 0x4d, 0xee, 0x19, 0x7f, 0x2f, 0x26,
- 0x2c, 0x2e, 0x42, 0xf9, 0xcb, 0x10, 0xc9, 0x19, 0xec, 0x78, 0x21, 0xa9, 0x3e, 0x82, 0xf9, 0x43,
- 0xbd, 0xf5, 0xd5, 0xa4, 0x0d, 0x6f, 0x0d, 0x32, 0xba, 0x65, 0x69, 0xac, 0x8d, 0x71, 0x0a, 0x37,
- 0xa7, 0x7b, 0xfe, 0x05, 0x9d, 0x4c, 0x52, 0x11, 0xc8, 0xe1, 0x4a, 0xdc, 0xd3, 0xf2, 0xc7, 0x4b,
- 0x00, 0x98, 0x74, 0xea, 0xc4, 0x79, 0x6b, 0xb6, 0x08, 0xea, 0xc0, 0x72, 0xe2, 0x4b, 0x18, 0xdd,
- 0x88, 0x92, 0xb4, 0x51, 0x8f, 0x70, 0xe5, 0xe6, 0x19, 0x5a, 0xe2, 0x26, 0x9a, 0x42, 0x5a, 0x40,
- 0xbc, 0x22, 0xad, 0x08, 0x5d, 0x4b, 0x64, 0x82, 0xd1, 0xe7, 0xac, 0xa2, 0x8e, 0x53, 0xf1, 0xe1,
- 0x1f, 0x48, 0xe8, 0x25, 0xcc, 0x0f, 0x3c, 0x5d, 0xd1, 0xd5, 0x01, 0xd3, 0x81, 0x97, 0xb2, 0xb2,
- 0x31, 0x72, 0x3e, 0x82, 0xfb, 0x04, 0x72, 0x91, 0x97, 0x25, 0x52, 0xa2, 0x36, 0xf1, 0x57, 0xaf,
- 0xb2, 0x9e, 0x38, 0x17, 0xa4, 0xe0, 0xff, 0xfc, 0x3a, 0x8e, 0x3d, 0xd3, 0xd0, 0xe6, 0x59, 0x6f,
- 0x45, 0xe5, 0xda, 0x18, 0x8d, 0xc4, 0xf8, 0x03, 0xec, 0xab, 0x23, 0x79, 0x76, 0x72, 0xfc, 0x89,
- 0xb8, 0x4f, 0x79, 0xfc, 0x82, 0xdf, 0xc6, 0xe3, 0x8f, 0xd3, 0xe8, 0x78, 0xfc, 0x03, 0x84, 0x98,
- 0x61, 0x1d, 0xf1, 0x62, 0x1b, 0x3a, 0x46, 0xf1, 0x62, 0x1b, 0x75, 0xc4, 0xe3, 0xc5, 0x36, 0xf2,
- 0x2c, 0xb2, 0x95, 0x76, 0x20, 0x1b, 0x70, 0x5f, 0x54, 0x0c, 0x4f, 0x52, 0x9c, 0x70, 0x2b, 0x6b,
- 0x09, 0x33, 0xc1, 0x7e, 0x3d, 0x83, 0x7c, 0x94, 0x5c, 0xa2, 0xf5, 0x64, 0xca, 0xc9, 0x91, 0x2e,
- 0x8f, 0xe3, 0xa3, 0x1c, 0x2c, 0xca, 0xd1, 0x42, 0xb0, 0x04, 0x82, 0x18, 0x82, 0x25, 0xd2, 0xba,
- 0x29, 0x54, 0x05, 0x08, 0x39, 0x17, 0x5a, 0x8b, 0xa6, 0x25, 0x0e, 0xa4, 0x24, 0x4d, 0x45, 0x61,
- 0x42, 0xa2, 0x13, 0xc2, 0x0c, 0xf1, 0xb1, 0x10, 0x66, 0x98, 0x17, 0xa9, 0x53, 0xe8, 0x83, 0x04,
- 0x1b, 0x67, 0x70, 0x0c, 0x54, 0xf2, 0x11, 0xce, 0xc7, 0x92, 0x94, 0xed, 0x73, 0xeb, 0x47, 0x36,
- 0xfd, 0x3d, 0x5c, 0x1e, 0x47, 0x00, 0xd0, 0xdd, 0x28, 0xe8, 0x19, 0xe4, 0x45, 0xb9, 0x77, 0x3e,
- 0xe5, 0xc8, 0xf2, 0x75, 0x28, 0xc4, 0x6f, 0x6d, 0x74, 0x25, 0xb8, 0xcf, 0x92, 0xc8, 0x84, 0x72,
- 0x75, 0xd4, 0x74, 0x1c, 0x34, 0x7e, 0x7b, 0x86, 0xa0, 0x89, 0xf7, 0x78, 0x08, 0x9a, 0x7c, 0xe9,
- 0x32, 0xd0, 0x17, 0x90, 0x8f, 0x7e, 0xb3, 0x0d, 0x8b, 0x31, 0xe1, 0x7b, 0x72, 0x58, 0x8c, 0x49,
- 0x9f, 0x79, 0x19, 0xdc, 0x23, 0xc8, 0xf8, 0xd7, 0x0c, 0x5a, 0xf5, 0xb5, 0x07, 0xae, 0x38, 0xa5,
- 0x38, 0x3c, 0xe1, 0x43, 0xec, 0x3c, 0x78, 0xe3, 0x4d, 0x5a, 0x7a, 0xb3, 0xd4, 0xb2, 0xbb, 0xdb,
- 0xfc, 0xef, 0x7d, 0xdb, 0x31, 0xb6, 0xb9, 0xc9, 0x7d, 0xf6, 0x61, 0x64, 0xdb, 0xb0, 0xc5, 0xb8,
- 0xdf, 0x6c, 0xa6, 0x99, 0xe8, 0xe1, 0x6f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x3a, 0xaa, 0x8a, 0xcf,
- 0x53, 0x17, 0x00, 0x00,
+func init() { proto.RegisterFile("ref.proto", fileDescriptor_ref_3e762b6865bf84bd) }
+
+var fileDescriptor_ref_3e762b6865bf84bd = []byte{
+ // 1635 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x58, 0x5b, 0x73, 0xdb, 0xb8,
+ 0x15, 0x0e, 0x65, 0x5b, 0x96, 0x8e, 0x14, 0x99, 0x86, 0x6f, 0x32, 0x9d, 0xc4, 0x0e, 0x72, 0x73,
+ 0x9a, 0x44, 0x4e, 0x95, 0x69, 0x5f, 0xda, 0x99, 0x56, 0xb6, 0xd5, 0xc4, 0xb5, 0x23, 0xbb, 0x90,
+ 0xda, 0x24, 0xbd, 0x0c, 0x4b, 0x49, 0x10, 0xcd, 0x96, 0x12, 0x55, 0x12, 0x8a, 0xe3, 0x99, 0xb6,
+ 0x2f, 0xed, 0x4b, 0xa7, 0x99, 0xd9, 0xb7, 0xdd, 0x7f, 0xb0, 0x7f, 0x65, 0x1f, 0xf6, 0x1f, 0xed,
+ 0xd3, 0x0e, 0x01, 0x50, 0x24, 0x25, 0x4a, 0xf6, 0xac, 0x36, 0xbb, 0x4f, 0x12, 0x80, 0x73, 0xbe,
+ 0x73, 0xc1, 0xc1, 0xc1, 0x07, 0x42, 0xd6, 0xa5, 0x9d, 0x52, 0xdf, 0x75, 0x98, 0x83, 0xd2, 0xa6,
+ 0xc5, 0x0c, 0xfb, 0x52, 0x83, 0xa6, 0xed, 0x34, 0xc5, 0x9c, 0x96, 0xf7, 0xce, 0x0d, 0x97, 0xb6,
+ 0xe5, 0x68, 0xdb, 0x74, 0x1c, 0xd3, 0xa6, 0x7b, 0x7c, 0xd4, 0x1c, 0x74, 0xf6, 0x98, 0xd5, 0xa5,
+ 0x1e, 0x33, 0xba, 0x7d, 0x21, 0x80, 0xff, 0x09, 0x2b, 0x27, 0x96, 0xc7, 0x6a, 0xf4, 0x62, 0xdf,
+ 0x76, 0x9a, 0x1e, 0xa1, 0xff, 0x18, 0x50, 0x8f, 0xa1, 0x32, 0x80, 0x4b, 0xfb, 0x8e, 0x67, 0x31,
+ 0xc7, 0xbd, 0x2c, 0x2a, 0x3b, 0xca, 0x6e, 0xae, 0x8c, 0x4a, 0xc2, 0x5c, 0x89, 0x0c, 0x57, 0x48,
+ 0x44, 0x0a, 0x6d, 0x41, 0xb6, 0xe5, 0x74, 0xbb, 0x16, 0xd3, 0xad, 0x76, 0x31, 0xb5, 0xa3, 0xec,
+ 0x66, 0x49, 0x46, 0x4c, 0x1c, 0xb5, 0xd1, 0x2a, 0x2c, 0xd8, 0x56, 0xd7, 0x62, 0xc5, 0xb9, 0x1d,
+ 0x65, 0xf7, 0x26, 0x11, 0x03, 0xfc, 0x06, 0x56, 0xe3, 0xd6, 0xbd, 0xbe, 0xd3, 0xf3, 0x28, 0xfa,
+ 0x15, 0xa8, 0x3d, 0x7a, 0xa1, 0xfb, 0x61, 0xe9, 0x4e, 0xf3, 0x6f, 0xb4, 0xc5, 0xbc, 0xa2, 0xb2,
+ 0x33, 0xb7, 0x9b, 0x2b, 0xaf, 0x05, 0x4e, 0x48, 0x9d, 0x53, 0xbe, 0x4a, 0x0a, 0xbd, 0xe8, 0xd0,
+ 0xc3, 0x04, 0x6e, 0xfd, 0xc6, 0xea, 0xb5, 0x0f, 0x69, 0xc7, 0x18, 0xd8, 0x6c, 0xdf, 0x35, 0x7a,
+ 0xad, 0xf3, 0x9a, 0xd1, 0xa5, 0x33, 0xc4, 0x87, 0x5f, 0xc0, 0xed, 0x09, 0x98, 0xd2, 0x6b, 0x04,
+ 0xf3, 0x3d, 0xa3, 0x4b, 0x39, 0x5c, 0x9e, 0xf0, 0xff, 0xf8, 0x14, 0x36, 0x7d, 0xa5, 0x8a, 0x6d,
+ 0x87, 0x0a, 0xb3, 0x64, 0x19, 0x97, 0x41, 0x4b, 0x02, 0x94, 0x2e, 0xac, 0xc2, 0x82, 0x6f, 0x56,
+ 0x64, 0x2b, 0x4f, 0xc4, 0x00, 0x9f, 0xc0, 0xba, 0xd4, 0x69, 0x18, 0xe6, 0xcc, 0x1e, 0xec, 0xc1,
+ 0xc6, 0x18, 0xda, 0x54, 0xf3, 0xff, 0x02, 0xe4, 0x2b, 0x10, 0xda, 0x99, 0x71, 0x0b, 0xa6, 0x97,
+ 0xd8, 0x3a, 0xa4, 0xfb, 0x2e, 0xed, 0x58, 0x1f, 0x78, 0x8d, 0xe5, 0x89, 0x1c, 0xe1, 0xc7, 0xb0,
+ 0x12, 0x33, 0x3f, 0x65, 0xb7, 0xbe, 0x52, 0xa0, 0xe8, 0xcb, 0x9e, 0x38, 0x2d, 0x43, 0xe6, 0x77,
+ 0xa6, 0x5c, 0xa1, 0x5f, 0xc3, 0xa2, 0xe7, 0xb8, 0x4c, 0x6f, 0x5e, 0x72, 0x77, 0x0b, 0xe5, 0x47,
+ 0x81, 0xc2, 0x24, 0x33, 0xa5, 0xba, 0xe3, 0xb2, 0xfd, 0x4b, 0x92, 0xf6, 0xf8, 0x2f, 0xfe, 0x19,
+ 0xa4, 0xc5, 0x0c, 0xca, 0xc0, 0x7c, 0xad, 0xf2, 0xba, 0xaa, 0xde, 0x40, 0x4b, 0x90, 0xfb, 0xfd,
+ 0xd9, 0x61, 0xa5, 0x51, 0x3d, 0xd4, 0x2b, 0xf5, 0x03, 0x55, 0x41, 0x2a, 0xe4, 0x83, 0x89, 0xc3,
+ 0x6a, 0xfd, 0x40, 0x4d, 0xe1, 0xb7, 0xa2, 0xee, 0x46, 0x2c, 0xc8, 0xd0, 0x7f, 0x01, 0x99, 0xa6,
+ 0x9c, 0x93, 0xc7, 0x6a, 0x7b, 0x82, 0x5b, 0x81, 0x0a, 0x19, 0x2a, 0xe0, 0xff, 0xa7, 0xc4, 0xfe,
+ 0x27, 0x48, 0x25, 0xe5, 0x74, 0xfa, 0x9e, 0x3d, 0x80, 0x82, 0x5c, 0xf4, 0x06, 0xfc, 0xe8, 0xca,
+ 0xbd, 0xbb, 0x29, 0x66, 0xeb, 0x62, 0x12, 0xbd, 0x02, 0x39, 0xa1, 0x1b, 0x03, 0x76, 0xee, 0xb8,
+ 0xc5, 0x79, 0x9e, 0xfd, 0x7b, 0x13, 0xbc, 0x3e, 0xe0, 0xb2, 0x15, 0x2e, 0x4a, 0xf2, 0xad, 0xc8,
+ 0x08, 0xd5, 0x40, 0x95, 0x48, 0xe2, 0x87, 0x51, 0xb7, 0xb8, 0x70, 0x7d, 0xb0, 0x25, 0xa1, 0x75,
+ 0x10, 0xe8, 0xe2, 0x0b, 0xd8, 0x9a, 0x22, 0x9f, 0x98, 0x90, 0x55, 0x58, 0xa0, 0x5d, 0xc3, 0xb2,
+ 0x79, 0x32, 0xf2, 0x44, 0x0c, 0x50, 0x09, 0xe6, 0xdb, 0x06, 0xa3, 0x3c, 0xfe, 0x5c, 0x59, 0x2b,
+ 0x89, 0xc6, 0x5d, 0x0a, 0x1a, 0x77, 0xa9, 0x11, 0x34, 0x6e, 0xc2, 0xe5, 0xf0, 0xe7, 0xca, 0xf0,
+ 0x50, 0x7f, 0x1f, 0x85, 0xba, 0x0d, 0xb9, 0x2e, 0x75, 0x4d, 0xda, 0xd6, 0x9d, 0x9e, 0x2d, 0x8a,
+ 0x35, 0x43, 0x40, 0x4c, 0x9d, 0xf6, 0xec, 0x4b, 0xf4, 0x08, 0x96, 0xa4, 0xc0, 0xb0, 0x74, 0xe6,
+ 0xf8, 0x21, 0x2f, 0x88, 0xe9, 0xc0, 0x09, 0xfc, 0xa5, 0x32, 0xec, 0x0f, 0x63, 0x85, 0xb7, 0x3f,
+ 0x56, 0x78, 0x0f, 0xa3, 0x59, 0x4f, 0x50, 0x29, 0xc9, 0x0a, 0x1b, 0xea, 0x69, 0x2f, 0x21, 0x2d,
+ 0xe6, 0x12, 0x93, 0xfb, 0x18, 0xd2, 0xcc, 0x70, 0x4d, 0xca, 0x78, 0x08, 0xb9, 0xf2, 0x72, 0x80,
+ 0xff, 0x32, 0xd8, 0x35, 0x22, 0x05, 0xf0, 0x2b, 0xd1, 0x96, 0x44, 0x1f, 0x9b, 0xa9, 0x23, 0xfe,
+ 0x5c, 0x74, 0x98, 0x21, 0x92, 0x8c, 0x76, 0x1b, 0xe6, 0x99, 0x61, 0x06, 0x91, 0xe6, 0x02, 0x90,
+ 0x86, 0x61, 0x12, 0xbe, 0x80, 0xdf, 0x82, 0x4a, 0x68, 0xa7, 0xfa, 0xc1, 0xf2, 0xd8, 0x4c, 0x9b,
+ 0xa7, 0xc2, 0x9c, 0x4b, 0x3b, 0xb2, 0x9e, 0xfc, 0xbf, 0xf8, 0x31, 0x2c, 0x47, 0x90, 0xc3, 0xee,
+ 0xfc, 0xde, 0xb0, 0x07, 0x22, 0x61, 0x19, 0x22, 0x06, 0xf8, 0xdf, 0xb0, 0x72, 0xe0, 0x52, 0x83,
+ 0xd1, 0xe0, 0x2c, 0x7f, 0x77, 0x3f, 0x82, 0x0d, 0x49, 0x45, 0x36, 0x64, 0x1b, 0x72, 0x1e, 0x33,
+ 0x5c, 0xa6, 0xf7, 0x1d, 0xab, 0x17, 0x1c, 0x6f, 0xe0, 0x53, 0x67, 0xfe, 0x0c, 0xfe, 0x5a, 0x81,
+ 0xd5, 0xb8, 0x03, 0xc3, 0x2e, 0x95, 0xf6, 0x98, 0xc1, 0x06, 0x1e, 0xb7, 0x5e, 0x08, 0x0f, 0x68,
+ 0x92, 0x74, 0xa9, 0xce, 0x45, 0x89, 0x54, 0x41, 0x0f, 0x21, 0x2d, 0x2a, 0x46, 0xd6, 0x41, 0x21,
+ 0x50, 0x96, 0x6a, 0x72, 0x15, 0xd7, 0x20, 0x2d, 0x34, 0x51, 0x1a, 0x52, 0xa7, 0xc7, 0xea, 0x0d,
+ 0x54, 0x00, 0xa8, 0x12, 0xa2, 0x57, 0xdf, 0x1e, 0xd5, 0x1b, 0x75, 0x55, 0xf1, 0x9b, 0xad, 0x3f,
+ 0x3e, 0xaa, 0xfd, 0xa1, 0x72, 0x72, 0x74, 0xa8, 0xa6, 0xd0, 0x16, 0x6c, 0x44, 0x26, 0xf4, 0x7a,
+ 0xa3, 0x42, 0x1a, 0xfa, 0xd9, 0xe9, 0x51, 0xad, 0xa1, 0xce, 0xe1, 0xbf, 0xc0, 0xca, 0x21, 0xb5,
+ 0xe9, 0x27, 0xca, 0x26, 0x5e, 0x87, 0xd5, 0x38, 0xbc, 0x88, 0x1e, 0xff, 0x09, 0x96, 0xfd, 0x0a,
+ 0xfc, 0x34, 0x46, 0x7f, 0x29, 0x0e, 0xca, 0xc8, 0xf6, 0x84, 0x19, 0x56, 0xa6, 0x66, 0xf8, 0x7f,
+ 0x0a, 0x2c, 0x0b, 0x9f, 0x09, 0xed, 0xcc, 0x54, 0xe6, 0x4f, 0x01, 0xd1, 0x0f, 0x2d, 0xda, 0x67,
+ 0xfa, 0x85, 0xc5, 0xce, 0x75, 0x79, 0xd9, 0xa7, 0x78, 0x17, 0x52, 0xc5, 0xca, 0x1b, 0x8b, 0x9d,
+ 0x9f, 0xf1, 0x79, 0x3f, 0x12, 0x97, 0x76, 0x82, 0x2e, 0xc5, 0xff, 0xe3, 0x9f, 0x02, 0x8a, 0xba,
+ 0x22, 0x23, 0xd9, 0x82, 0xac, 0x69, 0x31, 0x9d, 0xba, 0xae, 0xe3, 0x72, 0x57, 0xb2, 0x24, 0x63,
+ 0x5a, 0xac, 0xea, 0x8f, 0xf1, 0x67, 0x0a, 0x3c, 0xf4, 0x39, 0x6a, 0x84, 0x6d, 0x1d, 0x38, 0x3d,
+ 0x66, 0x58, 0x3d, 0xab, 0x67, 0xca, 0x8e, 0xf2, 0xc3, 0x92, 0x66, 0x02, 0x8f, 0xae, 0x74, 0x48,
+ 0x46, 0x76, 0x17, 0xf2, 0x62, 0x17, 0x74, 0x41, 0xcb, 0x44, 0xae, 0x72, 0xcd, 0x50, 0xf5, 0xb7,
+ 0xf3, 0x19, 0x45, 0x4d, 0xe1, 0x8f, 0x0a, 0xdc, 0xf3, 0x41, 0x03, 0x46, 0xf7, 0x23, 0x87, 0x78,
+ 0x04, 0xf7, 0xa7, 0x7b, 0x13, 0xee, 0x1c, 0x33, 0xcc, 0x58, 0x70, 0x19, 0x26, 0x95, 0x64, 0x64,
+ 0x03, 0x58, 0x7b, 0x49, 0x7d, 0xa4, 0xd7, 0xd4, 0xf3, 0x0c, 0x73, 0xb6, 0x5b, 0x72, 0x03, 0x16,
+ 0x7d, 0x7b, 0x56, 0x5b, 0x94, 0x55, 0xd6, 0xbf, 0x4b, 0xcc, 0xa3, 0xb6, 0x6f, 0x2b, 0xa5, 0xce,
+ 0x91, 0xd0, 0x19, 0xfc, 0x0e, 0xd6, 0x47, 0xcd, 0x4a, 0x9f, 0x8b, 0xb0, 0xd8, 0x15, 0x73, 0xf2,
+ 0x90, 0x05, 0x43, 0xb4, 0xe6, 0xdf, 0x5d, 0x3e, 0x3a, 0x4f, 0x46, 0x96, 0x2c, 0x70, 0x70, 0x11,
+ 0x07, 0x8f, 0x8b, 0x63, 0xe3, 0x73, 0x58, 0x93, 0x8f, 0x26, 0x91, 0x8d, 0x4f, 0xf6, 0x68, 0xc3,
+ 0x55, 0x58, 0x1f, 0xb5, 0x24, 0x83, 0x78, 0x02, 0x8b, 0x42, 0x2a, 0xb8, 0xdd, 0x12, 0xee, 0xd9,
+ 0x40, 0x02, 0x7b, 0xe2, 0x31, 0x56, 0xb1, 0x6d, 0x42, 0xbb, 0x4e, 0xd0, 0xbb, 0x66, 0xe6, 0x2b,
+ 0x2e, 0x07, 0xd3, 0x87, 0xed, 0x2a, 0xeb, 0x0b, 0xf8, 0x53, 0xfe, 0xf6, 0xe3, 0x63, 0xf1, 0x5a,
+ 0x4b, 0x30, 0x2a, 0x43, 0xf8, 0xc9, 0x18, 0x17, 0x19, 0xed, 0x60, 0x21, 0xe7, 0xfd, 0x2b, 0x2c,
+ 0x9d, 0x19, 0xad, 0xbf, 0xcf, 0xda, 0xc0, 0x36, 0x21, 0x63, 0xd8, 0xb6, 0xce, 0xdb, 0x92, 0x60,
+ 0x58, 0x8b, 0x86, 0xef, 0x5f, 0xc7, 0xc3, 0x08, 0xd4, 0xd0, 0x82, 0xf0, 0xb0, 0xfc, 0xdf, 0x02,
+ 0x00, 0xa1, 0x9d, 0x3a, 0x75, 0xdf, 0x5b, 0x2d, 0x8a, 0x6c, 0x58, 0x4b, 0x7c, 0x7f, 0xa2, 0xfb,
+ 0x51, 0x0e, 0x35, 0xe9, 0xc9, 0xab, 0x3d, 0xb8, 0x42, 0x4a, 0xde, 0x24, 0xe9, 0x6f, 0xbe, 0xd8,
+ 0x4d, 0x65, 0x52, 0x88, 0x0e, 0xd9, 0x51, 0xa4, 0xd1, 0xa0, 0xbb, 0x89, 0x74, 0x2d, 0xfa, 0xa4,
+ 0xd4, 0xf0, 0x34, 0x91, 0xb8, 0x91, 0xe7, 0x0a, 0xfa, 0x33, 0x2c, 0x8d, 0x3c, 0x26, 0xd1, 0x9d,
+ 0x11, 0x80, 0x91, 0x37, 0xab, 0xb6, 0x3d, 0x71, 0x7d, 0x0c, 0xbd, 0x06, 0xb9, 0xc8, 0xd3, 0x0f,
+ 0x69, 0x51, 0xcd, 0xf8, 0x73, 0x54, 0xdb, 0x4a, 0x5c, 0x1b, 0x49, 0x4a, 0x53, 0x5c, 0xb3, 0xb1,
+ 0x57, 0x15, 0xda, 0xb9, 0xea, 0x49, 0xa7, 0xdd, 0x9d, 0x22, 0x31, 0x25, 0x23, 0x43, 0x0b, 0x77,
+ 0x26, 0x92, 0xe4, 0xe4, 0x8c, 0x4c, 0x41, 0x3f, 0x13, 0x19, 0x91, 0x54, 0x35, 0x9e, 0x91, 0x38,
+ 0x13, 0x8e, 0x67, 0x64, 0x84, 0xdb, 0x46, 0x10, 0x7b, 0xa2, 0x2c, 0xc7, 0x0e, 0x5a, 0xbc, 0x2c,
+ 0x27, 0x1d, 0xfe, 0x78, 0x59, 0x4e, 0x3c, 0xad, 0x11, 0x7b, 0xaf, 0x20, 0x3b, 0xa4, 0xb6, 0xa8,
+ 0x18, 0x9e, 0xb8, 0x38, 0x8f, 0xd6, 0x36, 0x13, 0x56, 0x46, 0x76, 0xf3, 0x77, 0x90, 0x8f, 0x52,
+ 0x49, 0xb4, 0x95, 0x4c, 0x30, 0x05, 0xde, 0xad, 0x69, 0xec, 0x53, 0x42, 0x2a, 0x3e, 0x64, 0x94,
+ 0x9f, 0x85, 0x90, 0x09, 0xa4, 0x30, 0x84, 0x4c, 0xa4, 0x74, 0x01, 0xe4, 0x31, 0x40, 0xc8, 0xbe,
+ 0xd0, 0x66, 0x34, 0x5d, 0x71, 0x38, 0x2d, 0x69, 0x69, 0x24, 0xe4, 0x63, 0x80, 0x90, 0x00, 0x85,
+ 0x60, 0x63, 0xfc, 0x2c, 0x04, 0x1b, 0xe7, 0x4b, 0x43, 0xcf, 0x3e, 0x2a, 0xb0, 0x7d, 0x05, 0x13,
+ 0x41, 0xa5, 0x00, 0xe7, 0x7a, 0x1c, 0x4a, 0xdb, 0xbb, 0xb6, 0xfc, 0x58, 0x61, 0xfc, 0x47, 0x81,
+ 0x5b, 0xd3, 0x58, 0x03, 0x7a, 0x12, 0xc5, 0xbe, 0x82, 0xe9, 0x68, 0x4f, 0xaf, 0x27, 0x3c, 0xe6,
+ 0xc5, 0x3b, 0x28, 0xc4, 0x2f, 0x7e, 0x74, 0x7b, 0x78, 0x35, 0x26, 0xf1, 0x10, 0xed, 0xce, 0xa4,
+ 0xe5, 0x24, 0xe8, 0xf8, 0x75, 0x1c, 0x42, 0x27, 0x12, 0x82, 0x10, 0x3a, 0xf9, 0x16, 0x8f, 0x40,
+ 0xd7, 0x21, 0x1f, 0xfd, 0x10, 0x1b, 0xd6, 0x6d, 0xc2, 0xc7, 0xe1, 0xb0, 0x6e, 0x93, 0xbe, 0xdd,
+ 0x46, 0x40, 0xab, 0x90, 0x09, 0xee, 0x34, 0xb4, 0x11, 0xe8, 0x8c, 0xdc, 0xa3, 0x5a, 0x71, 0x7c,
+ 0x21, 0x5e, 0x66, 0xfb, 0xcf, 0xff, 0xe8, 0x8b, 0xd8, 0x46, 0xb3, 0xd4, 0x72, 0xba, 0x7b, 0xe2,
+ 0xef, 0x33, 0xc7, 0x35, 0xf7, 0x84, 0xe2, 0x33, 0xfe, 0x89, 0x64, 0xcf, 0x74, 0xe4, 0xb8, 0xdf,
+ 0x6c, 0xa6, 0xf9, 0xd4, 0x8b, 0x6f, 0x03, 0x00, 0x00, 0xff, 0xff, 0x19, 0xd8, 0x90, 0x51, 0x2b,
+ 0x17, 0x00, 0x00,
}
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/remote.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/remote.pb.go
index b32251ceb..29f988f2a 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/remote.pb.go
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/remote.pb.go
@@ -38,7 +38,7 @@ func (m *AddRemoteRequest) Reset() { *m = AddRemoteRequest{} }
func (m *AddRemoteRequest) String() string { return proto.CompactTextString(m) }
func (*AddRemoteRequest) ProtoMessage() {}
func (*AddRemoteRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_remote_8f251117f9f2149f, []int{0}
+ return fileDescriptor_remote_52e228b7e9549034, []int{0}
}
func (m *AddRemoteRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_AddRemoteRequest.Unmarshal(m, b)
@@ -96,7 +96,7 @@ func (m *AddRemoteResponse) Reset() { *m = AddRemoteResponse{} }
func (m *AddRemoteResponse) String() string { return proto.CompactTextString(m) }
func (*AddRemoteResponse) ProtoMessage() {}
func (*AddRemoteResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_remote_8f251117f9f2149f, []int{1}
+ return fileDescriptor_remote_52e228b7e9549034, []int{1}
}
func (m *AddRemoteResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_AddRemoteResponse.Unmarshal(m, b)
@@ -128,7 +128,7 @@ func (m *RemoveRemoteRequest) Reset() { *m = RemoveRemoteRequest{} }
func (m *RemoveRemoteRequest) String() string { return proto.CompactTextString(m) }
func (*RemoveRemoteRequest) ProtoMessage() {}
func (*RemoveRemoteRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_remote_8f251117f9f2149f, []int{2}
+ return fileDescriptor_remote_52e228b7e9549034, []int{2}
}
func (m *RemoveRemoteRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RemoveRemoteRequest.Unmarshal(m, b)
@@ -173,7 +173,7 @@ func (m *RemoveRemoteResponse) Reset() { *m = RemoveRemoteResponse{} }
func (m *RemoveRemoteResponse) String() string { return proto.CompactTextString(m) }
func (*RemoveRemoteResponse) ProtoMessage() {}
func (*RemoveRemoteResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_remote_8f251117f9f2149f, []int{3}
+ return fileDescriptor_remote_52e228b7e9549034, []int{3}
}
func (m *RemoveRemoteResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RemoveRemoteResponse.Unmarshal(m, b)
@@ -212,7 +212,7 @@ func (m *FetchInternalRemoteRequest) Reset() { *m = FetchInternalRemoteR
func (m *FetchInternalRemoteRequest) String() string { return proto.CompactTextString(m) }
func (*FetchInternalRemoteRequest) ProtoMessage() {}
func (*FetchInternalRemoteRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_remote_8f251117f9f2149f, []int{4}
+ return fileDescriptor_remote_52e228b7e9549034, []int{4}
}
func (m *FetchInternalRemoteRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FetchInternalRemoteRequest.Unmarshal(m, b)
@@ -257,7 +257,7 @@ func (m *FetchInternalRemoteResponse) Reset() { *m = FetchInternalRemote
func (m *FetchInternalRemoteResponse) String() string { return proto.CompactTextString(m) }
func (*FetchInternalRemoteResponse) ProtoMessage() {}
func (*FetchInternalRemoteResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_remote_8f251117f9f2149f, []int{5}
+ return fileDescriptor_remote_52e228b7e9549034, []int{5}
}
func (m *FetchInternalRemoteResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FetchInternalRemoteResponse.Unmarshal(m, b)
@@ -299,7 +299,7 @@ func (m *UpdateRemoteMirrorRequest) Reset() { *m = UpdateRemoteMirrorReq
func (m *UpdateRemoteMirrorRequest) String() string { return proto.CompactTextString(m) }
func (*UpdateRemoteMirrorRequest) ProtoMessage() {}
func (*UpdateRemoteMirrorRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_remote_8f251117f9f2149f, []int{6}
+ return fileDescriptor_remote_52e228b7e9549034, []int{6}
}
func (m *UpdateRemoteMirrorRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UpdateRemoteMirrorRequest.Unmarshal(m, b)
@@ -364,7 +364,7 @@ func (m *UpdateRemoteMirrorResponse) Reset() { *m = UpdateRemoteMirrorRe
func (m *UpdateRemoteMirrorResponse) String() string { return proto.CompactTextString(m) }
func (*UpdateRemoteMirrorResponse) ProtoMessage() {}
func (*UpdateRemoteMirrorResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_remote_8f251117f9f2149f, []int{7}
+ return fileDescriptor_remote_52e228b7e9549034, []int{7}
}
func (m *UpdateRemoteMirrorResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UpdateRemoteMirrorResponse.Unmarshal(m, b)
@@ -395,7 +395,7 @@ func (m *FindRemoteRepositoryRequest) Reset() { *m = FindRemoteRepositor
func (m *FindRemoteRepositoryRequest) String() string { return proto.CompactTextString(m) }
func (*FindRemoteRepositoryRequest) ProtoMessage() {}
func (*FindRemoteRepositoryRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_remote_8f251117f9f2149f, []int{8}
+ return fileDescriptor_remote_52e228b7e9549034, []int{8}
}
func (m *FindRemoteRepositoryRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindRemoteRepositoryRequest.Unmarshal(m, b)
@@ -435,7 +435,7 @@ func (m *FindRemoteRepositoryResponse) Reset() { *m = FindRemoteReposito
func (m *FindRemoteRepositoryResponse) String() string { return proto.CompactTextString(m) }
func (*FindRemoteRepositoryResponse) ProtoMessage() {}
func (*FindRemoteRepositoryResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_remote_8f251117f9f2149f, []int{9}
+ return fileDescriptor_remote_52e228b7e9549034, []int{9}
}
func (m *FindRemoteRepositoryResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindRemoteRepositoryResponse.Unmarshal(m, b)
@@ -474,7 +474,7 @@ func (m *FindRemoteRootRefRequest) Reset() { *m = FindRemoteRootRefReque
func (m *FindRemoteRootRefRequest) String() string { return proto.CompactTextString(m) }
func (*FindRemoteRootRefRequest) ProtoMessage() {}
func (*FindRemoteRootRefRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_remote_8f251117f9f2149f, []int{10}
+ return fileDescriptor_remote_52e228b7e9549034, []int{10}
}
func (m *FindRemoteRootRefRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindRemoteRootRefRequest.Unmarshal(m, b)
@@ -519,7 +519,7 @@ func (m *FindRemoteRootRefResponse) Reset() { *m = FindRemoteRootRefResp
func (m *FindRemoteRootRefResponse) String() string { return proto.CompactTextString(m) }
func (*FindRemoteRootRefResponse) ProtoMessage() {}
func (*FindRemoteRootRefResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_remote_8f251117f9f2149f, []int{11}
+ return fileDescriptor_remote_52e228b7e9549034, []int{11}
}
func (m *FindRemoteRootRefResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindRemoteRootRefResponse.Unmarshal(m, b)
@@ -557,7 +557,7 @@ func (m *ListRemotesRequest) Reset() { *m = ListRemotesRequest{} }
func (m *ListRemotesRequest) String() string { return proto.CompactTextString(m) }
func (*ListRemotesRequest) ProtoMessage() {}
func (*ListRemotesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_remote_8f251117f9f2149f, []int{12}
+ return fileDescriptor_remote_52e228b7e9549034, []int{12}
}
func (m *ListRemotesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListRemotesRequest.Unmarshal(m, b)
@@ -595,7 +595,7 @@ func (m *ListRemotesResponse) Reset() { *m = ListRemotesResponse{} }
func (m *ListRemotesResponse) String() string { return proto.CompactTextString(m) }
func (*ListRemotesResponse) ProtoMessage() {}
func (*ListRemotesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_remote_8f251117f9f2149f, []int{13}
+ return fileDescriptor_remote_52e228b7e9549034, []int{13}
}
func (m *ListRemotesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListRemotesResponse.Unmarshal(m, b)
@@ -635,7 +635,7 @@ func (m *ListRemotesResponse_Remote) Reset() { *m = ListRemotesResponse_
func (m *ListRemotesResponse_Remote) String() string { return proto.CompactTextString(m) }
func (*ListRemotesResponse_Remote) ProtoMessage() {}
func (*ListRemotesResponse_Remote) Descriptor() ([]byte, []int) {
- return fileDescriptor_remote_8f251117f9f2149f, []int{13, 0}
+ return fileDescriptor_remote_52e228b7e9549034, []int{13, 0}
}
func (m *ListRemotesResponse_Remote) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListRemotesResponse_Remote.Unmarshal(m, b)
@@ -1026,53 +1026,53 @@ var _RemoteService_serviceDesc = grpc.ServiceDesc{
Metadata: "remote.proto",
}
-func init() { proto.RegisterFile("remote.proto", fileDescriptor_remote_8f251117f9f2149f) }
+func init() { proto.RegisterFile("remote.proto", fileDescriptor_remote_52e228b7e9549034) }
-var fileDescriptor_remote_8f251117f9f2149f = []byte{
- // 718 bytes of a gzipped FileDescriptorProto
+var fileDescriptor_remote_52e228b7e9549034 = []byte{
+ // 708 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x55, 0xcd, 0x6e, 0xd3, 0x40,
- 0x10, 0xae, 0x93, 0x34, 0x3f, 0x93, 0x14, 0xa5, 0x9b, 0xaa, 0x38, 0x4e, 0x25, 0x52, 0x03, 0x92,
- 0x2f, 0x4d, 0xab, 0xf0, 0x73, 0x40, 0x20, 0x44, 0x0f, 0x15, 0xb4, 0x14, 0x21, 0x43, 0x2f, 0xbd,
- 0x18, 0x27, 0xd9, 0xc4, 0x56, 0x1d, 0xaf, 0xd9, 0x75, 0x0a, 0x79, 0x12, 0xc4, 0x23, 0x70, 0xe3,
- 0x99, 0x78, 0x02, 0xc4, 0x13, 0xa0, 0xf5, 0xae, 0x37, 0x2e, 0x75, 0x82, 0x44, 0xc5, 0x6d, 0xe7,
- 0xff, 0xfb, 0xc6, 0x33, 0x63, 0x68, 0x50, 0x3c, 0x25, 0x31, 0xee, 0x45, 0x94, 0xc4, 0x04, 0x95,
- 0x27, 0x7e, 0xec, 0x06, 0x73, 0xa3, 0xc1, 0x3c, 0x97, 0xe2, 0x91, 0xd0, 0x9a, 0xdf, 0x35, 0x68,
- 0xbe, 0x18, 0x8d, 0xec, 0xc4, 0xd3, 0xc6, 0x1f, 0x67, 0x98, 0xc5, 0xa8, 0x0f, 0x40, 0x71, 0x44,
- 0x98, 0x1f, 0x13, 0x3a, 0xd7, 0xb5, 0xae, 0x66, 0xd5, 0xfb, 0xa8, 0x27, 0xe2, 0x7b, 0xb6, 0xb2,
- 0xd8, 0x19, 0x2f, 0x84, 0xa0, 0x14, 0xba, 0x53, 0xac, 0x17, 0xba, 0x9a, 0x55, 0xb3, 0x93, 0x37,
- 0x6a, 0x42, 0x71, 0x46, 0x03, 0xbd, 0x98, 0xa8, 0xf8, 0x13, 0xdd, 0x87, 0x5b, 0x53, 0x9f, 0x52,
- 0x42, 0x1d, 0x8a, 0xc7, 0x53, 0x37, 0x62, 0xfa, 0x7a, 0xb7, 0x68, 0xd5, 0xec, 0x0d, 0xa1, 0xb5,
- 0x85, 0xf2, 0x49, 0xf9, 0xd7, 0x17, 0xab, 0x50, 0xd5, 0x8e, 0x4b, 0xd5, 0x52, 0x73, 0x3d, 0x35,
- 0xca, 0x10, 0xb3, 0x05, 0x9b, 0x19, 0xc4, 0x2c, 0x22, 0x21, 0xc3, 0x26, 0x86, 0x16, 0xd7, 0x5c,
- 0xe2, 0xff, 0xc2, 0x24, 0x05, 0x64, 0xf6, 0x60, 0xeb, 0x6a, 0x19, 0x51, 0x1e, 0x6d, 0x43, 0x99,
- 0x62, 0x36, 0x0b, 0xe2, 0xa4, 0x46, 0xd5, 0x96, 0x92, 0xf9, 0x55, 0x03, 0xe3, 0x08, 0xc7, 0x43,
- 0xef, 0x55, 0x18, 0x63, 0x1a, 0xba, 0xc1, 0xcd, 0xe1, 0x3d, 0x87, 0x4d, 0xf1, 0x5d, 0x9d, 0x4c,
- 0x68, 0x61, 0x69, 0x68, 0x93, 0xca, 0x8a, 0xa9, 0x46, 0x71, 0x79, 0x04, 0x9d, 0x5c, 0x68, 0x7f,
- 0xa1, 0xf4, 0x43, 0x83, 0xf6, 0x59, 0x34, 0x72, 0x63, 0xd9, 0x83, 0x53, 0xf9, 0xe5, 0xfe, 0x9d,
- 0x51, 0x1b, 0xaa, 0x14, 0x8f, 0x9d, 0x4c, 0xd3, 0x2b, 0x14, 0x8f, 0xdf, 0xf0, 0x09, 0x7a, 0x08,
- 0xdb, 0x24, 0x0c, 0xe6, 0xce, 0x80, 0xba, 0xe1, 0xd0, 0xc3, 0xcc, 0x99, 0xba, 0xf1, 0xd0, 0xf3,
- 0xc3, 0x89, 0x5e, 0xec, 0x16, 0xad, 0x86, 0xbd, 0xc5, 0xad, 0x87, 0xd2, 0x78, 0x2a, 0x6d, 0xe8,
- 0x36, 0x54, 0x18, 0xf3, 0x9c, 0x0b, 0x3c, 0xd7, 0x4b, 0x49, 0xbe, 0x32, 0x63, 0xde, 0x09, 0x9e,
- 0xa3, 0x3b, 0x50, 0xbf, 0x08, 0xc9, 0xa7, 0xd0, 0xf1, 0x08, 0x8b, 0xf9, 0xec, 0x71, 0x23, 0x24,
- 0xaa, 0x97, 0x5c, 0xa3, 0x7a, 0xb3, 0x03, 0x46, 0x1e, 0x47, 0x39, 0x6c, 0xcf, 0xa0, 0x73, 0xe4,
- 0x87, 0x6a, 0x04, 0x15, 0x29, 0xd9, 0x83, 0xa4, 0x73, 0xdc, 0x94, 0xf0, 0xaf, 0xd9, 0x52, 0x92,
- 0xc9, 0x0b, 0xe6, 0x63, 0xd8, 0xc9, 0x0f, 0x5f, 0x74, 0x1e, 0x7f, 0xf6, 0x39, 0x40, 0xd9, 0x79,
- 0x21, 0x99, 0x21, 0xe8, 0x99, 0x38, 0x42, 0x62, 0x1b, 0x8f, 0x6f, 0xd2, 0xf7, 0x05, 0xce, 0x42,
- 0x2e, 0xce, 0x3d, 0x68, 0xe7, 0xd4, 0x93, 0x20, 0x9b, 0x50, 0xa4, 0x78, 0x2c, 0x19, 0xf2, 0xa7,
- 0xf9, 0x16, 0xd0, 0x6b, 0x9f, 0xc5, 0xc2, 0x9d, 0xdd, 0x00, 0x98, 0x02, 0xf0, 0x4d, 0x83, 0xd6,
- 0x95, 0x94, 0xb2, 0xf6, 0x53, 0xa8, 0x08, 0xa8, 0xbc, 0x43, 0x45, 0xab, 0xde, 0x37, 0xd3, 0x84,
- 0x39, 0xde, 0x3d, 0x89, 0x3f, 0x0d, 0x31, 0xde, 0x43, 0x59, 0xa8, 0xd4, 0xa6, 0x6b, 0x99, 0x9b,
- 0xd5, 0x81, 0xda, 0x98, 0x6f, 0x85, 0xc3, 0x2f, 0x97, 0xe8, 0x4b, 0x35, 0x51, 0x9c, 0xd1, 0x80,
- 0x4f, 0x6a, 0x34, 0x63, 0xc2, 0x26, 0xae, 0x5a, 0x85, 0xcb, 0x67, 0x34, 0xe8, 0xff, 0x2c, 0xc1,
- 0x86, 0x48, 0xfb, 0x0e, 0xd3, 0x4b, 0x7f, 0x88, 0xd1, 0x21, 0xd4, 0xd4, 0x9d, 0x42, 0x7a, 0x8a,
- 0xf0, 0xcf, 0x63, 0x6b, 0xb4, 0x73, 0x2c, 0x72, 0xce, 0xd6, 0xd0, 0x07, 0x68, 0xe5, 0xec, 0x28,
- 0x52, 0x7c, 0x97, 0xdf, 0x16, 0xe3, 0xee, 0x4a, 0x1f, 0x55, 0xe1, 0x04, 0x1a, 0xd9, 0x8b, 0x86,
- 0x3a, 0x8b, 0x6f, 0x73, 0xed, 0x9c, 0x1a, 0x3b, 0xf9, 0x46, 0x95, 0xcc, 0x01, 0x74, 0x7d, 0x6d,
- 0xd0, 0x6e, 0x1a, 0xb5, 0xf4, 0x6c, 0x18, 0xe6, 0x2a, 0x97, 0x34, 0xbd, 0xa5, 0xa1, 0x21, 0x6c,
- 0xe5, 0xad, 0x0e, 0x5a, 0x90, 0x5d, 0xbe, 0x97, 0xc6, 0xbd, 0xd5, 0x4e, 0x8a, 0xc5, 0x39, 0x6c,
- 0x5e, 0x9b, 0x7b, 0xd4, 0xcd, 0x09, 0xbe, 0xb2, 0x82, 0xc6, 0xee, 0x0a, 0x0f, 0x95, 0xfb, 0x18,
- 0xea, 0x99, 0x19, 0x45, 0x46, 0xee, 0xe0, 0x8a, 0x7c, 0x9d, 0x15, 0x43, 0x6d, 0xae, 0x1d, 0x68,
- 0x87, 0x07, 0xe7, 0xdc, 0x23, 0x70, 0x07, 0xbd, 0x21, 0x99, 0xee, 0x8b, 0xe7, 0x1e, 0xa1, 0x93,
- 0x7d, 0x11, 0xb7, 0x97, 0xfc, 0xe1, 0xf7, 0x27, 0x44, 0xca, 0xd1, 0x60, 0x50, 0x4e, 0x54, 0x0f,
- 0x7e, 0x07, 0x00, 0x00, 0xff, 0xff, 0xcd, 0x9e, 0xcb, 0xe7, 0x1a, 0x08, 0x00, 0x00,
+ 0x10, 0x96, 0x93, 0x34, 0x3f, 0x93, 0x14, 0xa5, 0x9b, 0xaa, 0x38, 0x4e, 0x25, 0x52, 0x03, 0x92,
+ 0x2f, 0x4d, 0xab, 0xf0, 0x73, 0x42, 0x42, 0xf4, 0x80, 0xca, 0x4f, 0x11, 0x18, 0x7a, 0x41, 0x42,
+ 0xc6, 0x49, 0xd6, 0xb1, 0x55, 0xc7, 0x6b, 0x76, 0x37, 0x85, 0x3c, 0x06, 0x27, 0x24, 0x9e, 0x00,
+ 0x5e, 0x89, 0x47, 0xe1, 0x84, 0xd6, 0xbb, 0x4e, 0x9c, 0xd4, 0x09, 0x12, 0x15, 0xb7, 0x9d, 0x6f,
+ 0x7e, 0xbf, 0xf1, 0xcc, 0x18, 0x1a, 0x14, 0x4f, 0x08, 0xc7, 0xbd, 0x98, 0x12, 0x4e, 0x50, 0x79,
+ 0x1c, 0x70, 0x37, 0x9c, 0x19, 0x0d, 0xe6, 0xbb, 0x14, 0x8f, 0x24, 0x6a, 0xfe, 0xd0, 0xa0, 0xf9,
+ 0x64, 0x34, 0xb2, 0x13, 0x4b, 0x1b, 0x7f, 0x9a, 0x62, 0xc6, 0x51, 0x1f, 0x80, 0xe2, 0x98, 0xb0,
+ 0x80, 0x13, 0x3a, 0xd3, 0xb5, 0xae, 0x66, 0xd5, 0xfb, 0xa8, 0x27, 0xfd, 0x7b, 0xf6, 0x5c, 0x63,
+ 0x67, 0xac, 0x10, 0x82, 0x52, 0xe4, 0x4e, 0xb0, 0x5e, 0xe8, 0x6a, 0x56, 0xcd, 0x4e, 0xde, 0xa8,
+ 0x09, 0xc5, 0x29, 0x0d, 0xf5, 0x62, 0x02, 0x89, 0x27, 0xba, 0x0b, 0x37, 0x26, 0x01, 0xa5, 0x84,
+ 0x3a, 0x14, 0x7b, 0x13, 0x37, 0x66, 0xfa, 0x56, 0xb7, 0x68, 0xd5, 0xec, 0x6d, 0x89, 0xda, 0x12,
+ 0x7c, 0x5e, 0xaa, 0x96, 0x9a, 0x5b, 0x29, 0xa8, 0x4c, 0xcd, 0x16, 0xec, 0x64, 0x2a, 0x65, 0x31,
+ 0x89, 0x18, 0x36, 0x3f, 0x40, 0x4b, 0x20, 0x97, 0xf8, 0xbf, 0x30, 0x30, 0x7b, 0xb0, 0xbb, 0x1c,
+ 0x5e, 0xa6, 0x45, 0x7b, 0x50, 0xa6, 0x98, 0x4d, 0x43, 0x9e, 0xc4, 0xae, 0xda, 0x4a, 0x32, 0xbf,
+ 0x6a, 0x60, 0x3c, 0xc5, 0x7c, 0xe8, 0x3f, 0x8b, 0x38, 0xa6, 0x91, 0x1b, 0x5e, 0xbf, 0xac, 0xc7,
+ 0xb0, 0x23, 0xbf, 0xa3, 0x93, 0x71, 0x2d, 0xac, 0x75, 0x6d, 0x52, 0x95, 0x31, 0x45, 0xcc, 0x07,
+ 0xd0, 0xc9, 0x2d, 0xe9, 0x2f, 0x54, 0x7e, 0x69, 0xd0, 0x3e, 0x8f, 0x47, 0x2e, 0x57, 0xdc, 0xcf,
+ 0xd4, 0x17, 0xfa, 0x77, 0x26, 0x6d, 0xa8, 0x52, 0xec, 0x39, 0x99, 0x26, 0x57, 0x28, 0xf6, 0x5e,
+ 0x89, 0x49, 0xb9, 0x0f, 0x7b, 0x24, 0x0a, 0x67, 0xce, 0x80, 0xba, 0xd1, 0xd0, 0xc7, 0xcc, 0x99,
+ 0xb8, 0x7c, 0xe8, 0x07, 0xd1, 0x58, 0x2f, 0x76, 0x8b, 0x56, 0xc3, 0xde, 0x15, 0xda, 0x13, 0xa5,
+ 0x3c, 0x53, 0x3a, 0x74, 0x13, 0x2a, 0x8c, 0xf9, 0xce, 0x05, 0x9e, 0xe9, 0xa5, 0x24, 0x5e, 0x99,
+ 0x31, 0xff, 0x05, 0x9e, 0xa1, 0x5b, 0x50, 0xbf, 0x88, 0xc8, 0xe7, 0xc8, 0xf1, 0x09, 0xe3, 0x62,
+ 0xc6, 0x84, 0x12, 0x12, 0xe8, 0x54, 0x20, 0xe6, 0x3e, 0x18, 0x79, 0xdc, 0xd4, 0x50, 0x89, 0x8e,
+ 0x05, 0xd1, 0x7c, 0xd4, 0xe6, 0x64, 0x14, 0xf7, 0xa4, 0x63, 0x42, 0x95, 0xf0, 0xae, 0xd9, 0x4a,
+ 0x32, 0x1f, 0xc2, 0x7e, 0xbe, 0xdb, 0xa2, 0xd3, 0xf8, 0x4b, 0x20, 0x0a, 0x52, 0x9d, 0x96, 0x92,
+ 0xe9, 0x81, 0x9e, 0xf1, 0x23, 0x84, 0xdb, 0xd8, 0xbb, 0x4e, 0x9f, 0x17, 0xf5, 0x15, 0x96, 0xea,
+ 0x3b, 0x84, 0x76, 0x4e, 0x1e, 0x55, 0x5c, 0x13, 0x8a, 0x14, 0x7b, 0x8a, 0x91, 0x78, 0x9a, 0xa7,
+ 0x80, 0x5e, 0x06, 0x8c, 0x4b, 0x73, 0x76, 0x8d, 0x82, 0xcc, 0x9f, 0x1a, 0xb4, 0x96, 0x42, 0xa9,
+ 0x9c, 0x8f, 0xa0, 0x22, 0x4b, 0x13, 0x1d, 0x29, 0x5a, 0xf5, 0xbe, 0x99, 0x06, 0xca, 0xb1, 0xee,
+ 0xa9, 0xba, 0x53, 0x17, 0xe3, 0x1d, 0x94, 0x25, 0x34, 0xdf, 0x5c, 0x2d, 0x73, 0x7b, 0x3a, 0x50,
+ 0xf3, 0xc4, 0xd4, 0x3b, 0xe2, 0x02, 0xc9, 0x3e, 0x54, 0x13, 0xe0, 0x9c, 0x86, 0x62, 0x12, 0xe3,
+ 0x29, 0x93, 0x3a, 0x79, 0x9d, 0x2a, 0x42, 0x3e, 0xa7, 0x61, 0xff, 0xfb, 0x16, 0x6c, 0xcb, 0xb0,
+ 0x6f, 0x31, 0xbd, 0x0c, 0x86, 0x18, 0x9d, 0x42, 0x6d, 0x7e, 0x77, 0x90, 0x9e, 0x56, 0xb8, 0x7a,
+ 0x34, 0x8d, 0x76, 0x8e, 0x46, 0xcd, 0x53, 0xf9, 0xf7, 0x37, 0xab, 0x50, 0xd5, 0x90, 0x07, 0xad,
+ 0x9c, 0x4d, 0x44, 0x73, 0xd6, 0xeb, 0x2f, 0x87, 0x71, 0x7b, 0xa3, 0xcd, 0x4a, 0x9e, 0x37, 0xd0,
+ 0xc8, 0x5e, 0x2d, 0xd4, 0x59, 0x7c, 0x9f, 0x2b, 0xa7, 0xd2, 0xd8, 0xcf, 0x57, 0xae, 0x84, 0xc4,
+ 0x80, 0xae, 0x2e, 0x0c, 0x3a, 0x48, 0x7d, 0xd7, 0x1e, 0x0a, 0xc3, 0xdc, 0x64, 0xb2, 0x9c, 0xc4,
+ 0xd2, 0x50, 0x00, 0xbb, 0x79, 0x2b, 0x84, 0x16, 0xf4, 0xd7, 0xef, 0xa5, 0x71, 0x67, 0xb3, 0xd1,
+ 0x52, 0xb2, 0x02, 0xfa, 0x08, 0x3b, 0x57, 0xb6, 0x01, 0x75, 0x73, 0x42, 0x2c, 0x2d, 0xa4, 0x71,
+ 0xb0, 0xc1, 0x62, 0x25, 0xc3, 0x6b, 0xa8, 0x67, 0xe6, 0x18, 0x19, 0xb9, 0xc3, 0x2d, 0xa3, 0x76,
+ 0x36, 0x0c, 0x7e, 0x1a, 0xef, 0x58, 0x3b, 0x39, 0x7e, 0x2f, 0xec, 0x42, 0x77, 0xd0, 0x1b, 0x92,
+ 0xc9, 0x91, 0x7c, 0x1e, 0x12, 0x3a, 0x3e, 0x92, 0xde, 0x87, 0xc9, 0x3f, 0xfd, 0x68, 0x4c, 0x94,
+ 0x1c, 0x0f, 0x06, 0xe5, 0x04, 0xba, 0xf7, 0x27, 0x00, 0x00, 0xff, 0xff, 0xb4, 0x60, 0x93, 0x12,
+ 0x0c, 0x08, 0x00, 0x00,
}
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/repository-service.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/repository-service.pb.go
index e9abe8cca..abf9e107d 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/repository-service.pb.go
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/repository-service.pb.go
@@ -49,7 +49,7 @@ func (x GetArchiveRequest_Format) String() string {
return proto.EnumName(GetArchiveRequest_Format_name, int32(x))
}
func (GetArchiveRequest_Format) EnumDescriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{18, 0}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{18, 0}
}
type GetRawChangesResponse_RawChange_Operation int32
@@ -87,7 +87,7 @@ func (x GetRawChangesResponse_RawChange_Operation) String() string {
return proto.EnumName(GetRawChangesResponse_RawChange_Operation_name, int32(x))
}
func (GetRawChangesResponse_RawChange_Operation) EnumDescriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{63, 0, 0}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{63, 0, 0}
}
type RepositoryExistsRequest struct {
@@ -101,7 +101,7 @@ func (m *RepositoryExistsRequest) Reset() { *m = RepositoryExistsRequest
func (m *RepositoryExistsRequest) String() string { return proto.CompactTextString(m) }
func (*RepositoryExistsRequest) ProtoMessage() {}
func (*RepositoryExistsRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{0}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{0}
}
func (m *RepositoryExistsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RepositoryExistsRequest.Unmarshal(m, b)
@@ -139,7 +139,7 @@ func (m *RepositoryExistsResponse) Reset() { *m = RepositoryExistsRespon
func (m *RepositoryExistsResponse) String() string { return proto.CompactTextString(m) }
func (*RepositoryExistsResponse) ProtoMessage() {}
func (*RepositoryExistsResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{1}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{1}
}
func (m *RepositoryExistsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RepositoryExistsResponse.Unmarshal(m, b)
@@ -177,7 +177,7 @@ func (m *RepackIncrementalRequest) Reset() { *m = RepackIncrementalReque
func (m *RepackIncrementalRequest) String() string { return proto.CompactTextString(m) }
func (*RepackIncrementalRequest) ProtoMessage() {}
func (*RepackIncrementalRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{2}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{2}
}
func (m *RepackIncrementalRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RepackIncrementalRequest.Unmarshal(m, b)
@@ -214,7 +214,7 @@ func (m *RepackIncrementalResponse) Reset() { *m = RepackIncrementalResp
func (m *RepackIncrementalResponse) String() string { return proto.CompactTextString(m) }
func (*RepackIncrementalResponse) ProtoMessage() {}
func (*RepackIncrementalResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{3}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{3}
}
func (m *RepackIncrementalResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RepackIncrementalResponse.Unmarshal(m, b)
@@ -246,7 +246,7 @@ func (m *RepackFullRequest) Reset() { *m = RepackFullRequest{} }
func (m *RepackFullRequest) String() string { return proto.CompactTextString(m) }
func (*RepackFullRequest) ProtoMessage() {}
func (*RepackFullRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{4}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{4}
}
func (m *RepackFullRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RepackFullRequest.Unmarshal(m, b)
@@ -290,7 +290,7 @@ func (m *RepackFullResponse) Reset() { *m = RepackFullResponse{} }
func (m *RepackFullResponse) String() string { return proto.CompactTextString(m) }
func (*RepackFullResponse) ProtoMessage() {}
func (*RepackFullResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{5}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{5}
}
func (m *RepackFullResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RepackFullResponse.Unmarshal(m, b)
@@ -322,7 +322,7 @@ func (m *GarbageCollectRequest) Reset() { *m = GarbageCollectRequest{} }
func (m *GarbageCollectRequest) String() string { return proto.CompactTextString(m) }
func (*GarbageCollectRequest) ProtoMessage() {}
func (*GarbageCollectRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{6}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{6}
}
func (m *GarbageCollectRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GarbageCollectRequest.Unmarshal(m, b)
@@ -366,7 +366,7 @@ func (m *GarbageCollectResponse) Reset() { *m = GarbageCollectResponse{}
func (m *GarbageCollectResponse) String() string { return proto.CompactTextString(m) }
func (*GarbageCollectResponse) ProtoMessage() {}
func (*GarbageCollectResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{7}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{7}
}
func (m *GarbageCollectResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GarbageCollectResponse.Unmarshal(m, b)
@@ -397,7 +397,7 @@ func (m *CleanupRequest) Reset() { *m = CleanupRequest{} }
func (m *CleanupRequest) String() string { return proto.CompactTextString(m) }
func (*CleanupRequest) ProtoMessage() {}
func (*CleanupRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{8}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{8}
}
func (m *CleanupRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CleanupRequest.Unmarshal(m, b)
@@ -434,7 +434,7 @@ func (m *CleanupResponse) Reset() { *m = CleanupResponse{} }
func (m *CleanupResponse) String() string { return proto.CompactTextString(m) }
func (*CleanupResponse) ProtoMessage() {}
func (*CleanupResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{9}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{9}
}
func (m *CleanupResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CleanupResponse.Unmarshal(m, b)
@@ -465,7 +465,7 @@ func (m *RepositorySizeRequest) Reset() { *m = RepositorySizeRequest{} }
func (m *RepositorySizeRequest) String() string { return proto.CompactTextString(m) }
func (*RepositorySizeRequest) ProtoMessage() {}
func (*RepositorySizeRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{10}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{10}
}
func (m *RepositorySizeRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RepositorySizeRequest.Unmarshal(m, b)
@@ -504,7 +504,7 @@ func (m *RepositorySizeResponse) Reset() { *m = RepositorySizeResponse{}
func (m *RepositorySizeResponse) String() string { return proto.CompactTextString(m) }
func (*RepositorySizeResponse) ProtoMessage() {}
func (*RepositorySizeResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{11}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{11}
}
func (m *RepositorySizeResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RepositorySizeResponse.Unmarshal(m, b)
@@ -543,7 +543,7 @@ func (m *ApplyGitattributesRequest) Reset() { *m = ApplyGitattributesReq
func (m *ApplyGitattributesRequest) String() string { return proto.CompactTextString(m) }
func (*ApplyGitattributesRequest) ProtoMessage() {}
func (*ApplyGitattributesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{12}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{12}
}
func (m *ApplyGitattributesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ApplyGitattributesRequest.Unmarshal(m, b)
@@ -587,7 +587,7 @@ func (m *ApplyGitattributesResponse) Reset() { *m = ApplyGitattributesRe
func (m *ApplyGitattributesResponse) String() string { return proto.CompactTextString(m) }
func (*ApplyGitattributesResponse) ProtoMessage() {}
func (*ApplyGitattributesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{13}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{13}
}
func (m *ApplyGitattributesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ApplyGitattributesResponse.Unmarshal(m, b)
@@ -626,7 +626,7 @@ func (m *FetchRemoteRequest) Reset() { *m = FetchRemoteRequest{} }
func (m *FetchRemoteRequest) String() string { return proto.CompactTextString(m) }
func (*FetchRemoteRequest) ProtoMessage() {}
func (*FetchRemoteRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{14}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{14}
}
func (m *FetchRemoteRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FetchRemoteRequest.Unmarshal(m, b)
@@ -719,7 +719,7 @@ func (m *FetchRemoteResponse) Reset() { *m = FetchRemoteResponse{} }
func (m *FetchRemoteResponse) String() string { return proto.CompactTextString(m) }
func (*FetchRemoteResponse) ProtoMessage() {}
func (*FetchRemoteResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{15}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{15}
}
func (m *FetchRemoteResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FetchRemoteResponse.Unmarshal(m, b)
@@ -750,7 +750,7 @@ func (m *CreateRepositoryRequest) Reset() { *m = CreateRepositoryRequest
func (m *CreateRepositoryRequest) String() string { return proto.CompactTextString(m) }
func (*CreateRepositoryRequest) ProtoMessage() {}
func (*CreateRepositoryRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{16}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{16}
}
func (m *CreateRepositoryRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateRepositoryRequest.Unmarshal(m, b)
@@ -787,7 +787,7 @@ func (m *CreateRepositoryResponse) Reset() { *m = CreateRepositoryRespon
func (m *CreateRepositoryResponse) String() string { return proto.CompactTextString(m) }
func (*CreateRepositoryResponse) ProtoMessage() {}
func (*CreateRepositoryResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{17}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{17}
}
func (m *CreateRepositoryResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateRepositoryResponse.Unmarshal(m, b)
@@ -822,7 +822,7 @@ func (m *GetArchiveRequest) Reset() { *m = GetArchiveRequest{} }
func (m *GetArchiveRequest) String() string { return proto.CompactTextString(m) }
func (*GetArchiveRequest) ProtoMessage() {}
func (*GetArchiveRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{18}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{18}
}
func (m *GetArchiveRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetArchiveRequest.Unmarshal(m, b)
@@ -888,7 +888,7 @@ func (m *GetArchiveResponse) Reset() { *m = GetArchiveResponse{} }
func (m *GetArchiveResponse) String() string { return proto.CompactTextString(m) }
func (*GetArchiveResponse) ProtoMessage() {}
func (*GetArchiveResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{19}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{19}
}
func (m *GetArchiveResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetArchiveResponse.Unmarshal(m, b)
@@ -926,7 +926,7 @@ func (m *HasLocalBranchesRequest) Reset() { *m = HasLocalBranchesRequest
func (m *HasLocalBranchesRequest) String() string { return proto.CompactTextString(m) }
func (*HasLocalBranchesRequest) ProtoMessage() {}
func (*HasLocalBranchesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{20}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{20}
}
func (m *HasLocalBranchesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_HasLocalBranchesRequest.Unmarshal(m, b)
@@ -964,7 +964,7 @@ func (m *HasLocalBranchesResponse) Reset() { *m = HasLocalBranchesRespon
func (m *HasLocalBranchesResponse) String() string { return proto.CompactTextString(m) }
func (*HasLocalBranchesResponse) ProtoMessage() {}
func (*HasLocalBranchesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{21}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{21}
}
func (m *HasLocalBranchesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_HasLocalBranchesResponse.Unmarshal(m, b)
@@ -1005,7 +1005,7 @@ func (m *FetchSourceBranchRequest) Reset() { *m = FetchSourceBranchReque
func (m *FetchSourceBranchRequest) String() string { return proto.CompactTextString(m) }
func (*FetchSourceBranchRequest) ProtoMessage() {}
func (*FetchSourceBranchRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{22}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{22}
}
func (m *FetchSourceBranchRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FetchSourceBranchRequest.Unmarshal(m, b)
@@ -1064,7 +1064,7 @@ func (m *FetchSourceBranchResponse) Reset() { *m = FetchSourceBranchResp
func (m *FetchSourceBranchResponse) String() string { return proto.CompactTextString(m) }
func (*FetchSourceBranchResponse) ProtoMessage() {}
func (*FetchSourceBranchResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{23}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{23}
}
func (m *FetchSourceBranchResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FetchSourceBranchResponse.Unmarshal(m, b)
@@ -1102,7 +1102,7 @@ func (m *FsckRequest) Reset() { *m = FsckRequest{} }
func (m *FsckRequest) String() string { return proto.CompactTextString(m) }
func (*FsckRequest) ProtoMessage() {}
func (*FsckRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{24}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{24}
}
func (m *FsckRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FsckRequest.Unmarshal(m, b)
@@ -1140,7 +1140,7 @@ func (m *FsckResponse) Reset() { *m = FsckResponse{} }
func (m *FsckResponse) String() string { return proto.CompactTextString(m) }
func (*FsckResponse) ProtoMessage() {}
func (*FsckResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{25}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{25}
}
func (m *FsckResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FsckResponse.Unmarshal(m, b)
@@ -1182,7 +1182,7 @@ func (m *WriteRefRequest) Reset() { *m = WriteRefRequest{} }
func (m *WriteRefRequest) String() string { return proto.CompactTextString(m) }
func (*WriteRefRequest) ProtoMessage() {}
func (*WriteRefRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{26}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{26}
}
func (m *WriteRefRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WriteRefRequest.Unmarshal(m, b)
@@ -1247,7 +1247,7 @@ func (m *WriteRefResponse) Reset() { *m = WriteRefResponse{} }
func (m *WriteRefResponse) String() string { return proto.CompactTextString(m) }
func (*WriteRefResponse) ProtoMessage() {}
func (*WriteRefResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{27}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{27}
}
func (m *WriteRefResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WriteRefResponse.Unmarshal(m, b)
@@ -1282,7 +1282,7 @@ func (m *FindMergeBaseRequest) Reset() { *m = FindMergeBaseRequest{} }
func (m *FindMergeBaseRequest) String() string { return proto.CompactTextString(m) }
func (*FindMergeBaseRequest) ProtoMessage() {}
func (*FindMergeBaseRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{28}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{28}
}
func (m *FindMergeBaseRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindMergeBaseRequest.Unmarshal(m, b)
@@ -1327,7 +1327,7 @@ func (m *FindMergeBaseResponse) Reset() { *m = FindMergeBaseResponse{} }
func (m *FindMergeBaseResponse) String() string { return proto.CompactTextString(m) }
func (*FindMergeBaseResponse) ProtoMessage() {}
func (*FindMergeBaseResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{29}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{29}
}
func (m *FindMergeBaseResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindMergeBaseResponse.Unmarshal(m, b)
@@ -1366,7 +1366,7 @@ func (m *CreateForkRequest) Reset() { *m = CreateForkRequest{} }
func (m *CreateForkRequest) String() string { return proto.CompactTextString(m) }
func (*CreateForkRequest) ProtoMessage() {}
func (*CreateForkRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{30}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{30}
}
func (m *CreateForkRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateForkRequest.Unmarshal(m, b)
@@ -1410,7 +1410,7 @@ func (m *CreateForkResponse) Reset() { *m = CreateForkResponse{} }
func (m *CreateForkResponse) String() string { return proto.CompactTextString(m) }
func (*CreateForkResponse) ProtoMessage() {}
func (*CreateForkResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{31}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{31}
}
func (m *CreateForkResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateForkResponse.Unmarshal(m, b)
@@ -1442,7 +1442,7 @@ func (m *IsRebaseInProgressRequest) Reset() { *m = IsRebaseInProgressReq
func (m *IsRebaseInProgressRequest) String() string { return proto.CompactTextString(m) }
func (*IsRebaseInProgressRequest) ProtoMessage() {}
func (*IsRebaseInProgressRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{32}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{32}
}
func (m *IsRebaseInProgressRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_IsRebaseInProgressRequest.Unmarshal(m, b)
@@ -1487,7 +1487,7 @@ func (m *IsRebaseInProgressResponse) Reset() { *m = IsRebaseInProgressRe
func (m *IsRebaseInProgressResponse) String() string { return proto.CompactTextString(m) }
func (*IsRebaseInProgressResponse) ProtoMessage() {}
func (*IsRebaseInProgressResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{33}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{33}
}
func (m *IsRebaseInProgressResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_IsRebaseInProgressResponse.Unmarshal(m, b)
@@ -1526,7 +1526,7 @@ func (m *IsSquashInProgressRequest) Reset() { *m = IsSquashInProgressReq
func (m *IsSquashInProgressRequest) String() string { return proto.CompactTextString(m) }
func (*IsSquashInProgressRequest) ProtoMessage() {}
func (*IsSquashInProgressRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{34}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{34}
}
func (m *IsSquashInProgressRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_IsSquashInProgressRequest.Unmarshal(m, b)
@@ -1571,7 +1571,7 @@ func (m *IsSquashInProgressResponse) Reset() { *m = IsSquashInProgressRe
func (m *IsSquashInProgressResponse) String() string { return proto.CompactTextString(m) }
func (*IsSquashInProgressResponse) ProtoMessage() {}
func (*IsSquashInProgressResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{35}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{35}
}
func (m *IsSquashInProgressResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_IsSquashInProgressResponse.Unmarshal(m, b)
@@ -1610,7 +1610,7 @@ func (m *CreateRepositoryFromURLRequest) Reset() { *m = CreateRepository
func (m *CreateRepositoryFromURLRequest) String() string { return proto.CompactTextString(m) }
func (*CreateRepositoryFromURLRequest) ProtoMessage() {}
func (*CreateRepositoryFromURLRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{36}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{36}
}
func (m *CreateRepositoryFromURLRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateRepositoryFromURLRequest.Unmarshal(m, b)
@@ -1654,7 +1654,7 @@ func (m *CreateRepositoryFromURLResponse) Reset() { *m = CreateRepositor
func (m *CreateRepositoryFromURLResponse) String() string { return proto.CompactTextString(m) }
func (*CreateRepositoryFromURLResponse) ProtoMessage() {}
func (*CreateRepositoryFromURLResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{37}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{37}
}
func (m *CreateRepositoryFromURLResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateRepositoryFromURLResponse.Unmarshal(m, b)
@@ -1685,7 +1685,7 @@ func (m *CreateBundleRequest) Reset() { *m = CreateBundleRequest{} }
func (m *CreateBundleRequest) String() string { return proto.CompactTextString(m) }
func (*CreateBundleRequest) ProtoMessage() {}
func (*CreateBundleRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{38}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{38}
}
func (m *CreateBundleRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateBundleRequest.Unmarshal(m, b)
@@ -1723,7 +1723,7 @@ func (m *CreateBundleResponse) Reset() { *m = CreateBundleResponse{} }
func (m *CreateBundleResponse) String() string { return proto.CompactTextString(m) }
func (*CreateBundleResponse) ProtoMessage() {}
func (*CreateBundleResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{39}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{39}
}
func (m *CreateBundleResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateBundleResponse.Unmarshal(m, b)
@@ -1762,7 +1762,7 @@ func (m *WriteConfigRequest) Reset() { *m = WriteConfigRequest{} }
func (m *WriteConfigRequest) String() string { return proto.CompactTextString(m) }
func (*WriteConfigRequest) ProtoMessage() {}
func (*WriteConfigRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{40}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{40}
}
func (m *WriteConfigRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WriteConfigRequest.Unmarshal(m, b)
@@ -1807,7 +1807,7 @@ func (m *WriteConfigResponse) Reset() { *m = WriteConfigResponse{} }
func (m *WriteConfigResponse) String() string { return proto.CompactTextString(m) }
func (*WriteConfigResponse) ProtoMessage() {}
func (*WriteConfigResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{41}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{41}
}
func (m *WriteConfigResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WriteConfigResponse.Unmarshal(m, b)
@@ -1846,7 +1846,7 @@ func (m *SetConfigRequest) Reset() { *m = SetConfigRequest{} }
func (m *SetConfigRequest) String() string { return proto.CompactTextString(m) }
func (*SetConfigRequest) ProtoMessage() {}
func (*SetConfigRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{42}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{42}
}
func (m *SetConfigRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SetConfigRequest.Unmarshal(m, b)
@@ -1896,7 +1896,7 @@ func (m *SetConfigRequest_Entry) Reset() { *m = SetConfigRequest_Entry{}
func (m *SetConfigRequest_Entry) String() string { return proto.CompactTextString(m) }
func (*SetConfigRequest_Entry) ProtoMessage() {}
func (*SetConfigRequest_Entry) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{42, 0}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{42, 0}
}
func (m *SetConfigRequest_Entry) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SetConfigRequest_Entry.Unmarshal(m, b)
@@ -2066,7 +2066,7 @@ func (m *SetConfigResponse) Reset() { *m = SetConfigResponse{} }
func (m *SetConfigResponse) String() string { return proto.CompactTextString(m) }
func (*SetConfigResponse) ProtoMessage() {}
func (*SetConfigResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{43}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{43}
}
func (m *SetConfigResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SetConfigResponse.Unmarshal(m, b)
@@ -2098,7 +2098,7 @@ func (m *DeleteConfigRequest) Reset() { *m = DeleteConfigRequest{} }
func (m *DeleteConfigRequest) String() string { return proto.CompactTextString(m) }
func (*DeleteConfigRequest) ProtoMessage() {}
func (*DeleteConfigRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{44}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{44}
}
func (m *DeleteConfigRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteConfigRequest.Unmarshal(m, b)
@@ -2142,7 +2142,7 @@ func (m *DeleteConfigResponse) Reset() { *m = DeleteConfigResponse{} }
func (m *DeleteConfigResponse) String() string { return proto.CompactTextString(m) }
func (*DeleteConfigResponse) ProtoMessage() {}
func (*DeleteConfigResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{45}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{45}
}
func (m *DeleteConfigResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteConfigResponse.Unmarshal(m, b)
@@ -2174,7 +2174,7 @@ func (m *RestoreCustomHooksRequest) Reset() { *m = RestoreCustomHooksReq
func (m *RestoreCustomHooksRequest) String() string { return proto.CompactTextString(m) }
func (*RestoreCustomHooksRequest) ProtoMessage() {}
func (*RestoreCustomHooksRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{46}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{46}
}
func (m *RestoreCustomHooksRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RestoreCustomHooksRequest.Unmarshal(m, b)
@@ -2218,7 +2218,7 @@ func (m *RestoreCustomHooksResponse) Reset() { *m = RestoreCustomHooksRe
func (m *RestoreCustomHooksResponse) String() string { return proto.CompactTextString(m) }
func (*RestoreCustomHooksResponse) ProtoMessage() {}
func (*RestoreCustomHooksResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{47}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{47}
}
func (m *RestoreCustomHooksResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RestoreCustomHooksResponse.Unmarshal(m, b)
@@ -2249,7 +2249,7 @@ func (m *BackupCustomHooksRequest) Reset() { *m = BackupCustomHooksReque
func (m *BackupCustomHooksRequest) String() string { return proto.CompactTextString(m) }
func (*BackupCustomHooksRequest) ProtoMessage() {}
func (*BackupCustomHooksRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{48}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{48}
}
func (m *BackupCustomHooksRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_BackupCustomHooksRequest.Unmarshal(m, b)
@@ -2287,7 +2287,7 @@ func (m *BackupCustomHooksResponse) Reset() { *m = BackupCustomHooksResp
func (m *BackupCustomHooksResponse) String() string { return proto.CompactTextString(m) }
func (*BackupCustomHooksResponse) ProtoMessage() {}
func (*BackupCustomHooksResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{49}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{49}
}
func (m *BackupCustomHooksResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_BackupCustomHooksResponse.Unmarshal(m, b)
@@ -2327,7 +2327,7 @@ func (m *CreateRepositoryFromBundleRequest) Reset() { *m = CreateReposit
func (m *CreateRepositoryFromBundleRequest) String() string { return proto.CompactTextString(m) }
func (*CreateRepositoryFromBundleRequest) ProtoMessage() {}
func (*CreateRepositoryFromBundleRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{50}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{50}
}
func (m *CreateRepositoryFromBundleRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateRepositoryFromBundleRequest.Unmarshal(m, b)
@@ -2371,7 +2371,7 @@ func (m *CreateRepositoryFromBundleResponse) Reset() { *m = CreateReposi
func (m *CreateRepositoryFromBundleResponse) String() string { return proto.CompactTextString(m) }
func (*CreateRepositoryFromBundleResponse) ProtoMessage() {}
func (*CreateRepositoryFromBundleResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{51}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{51}
}
func (m *CreateRepositoryFromBundleResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateRepositoryFromBundleResponse.Unmarshal(m, b)
@@ -2402,7 +2402,7 @@ func (m *FindLicenseRequest) Reset() { *m = FindLicenseRequest{} }
func (m *FindLicenseRequest) String() string { return proto.CompactTextString(m) }
func (*FindLicenseRequest) ProtoMessage() {}
func (*FindLicenseRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{52}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{52}
}
func (m *FindLicenseRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindLicenseRequest.Unmarshal(m, b)
@@ -2440,7 +2440,7 @@ func (m *FindLicenseResponse) Reset() { *m = FindLicenseResponse{} }
func (m *FindLicenseResponse) String() string { return proto.CompactTextString(m) }
func (*FindLicenseResponse) ProtoMessage() {}
func (*FindLicenseResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{53}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{53}
}
func (m *FindLicenseResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindLicenseResponse.Unmarshal(m, b)
@@ -2478,7 +2478,7 @@ func (m *GetInfoAttributesRequest) Reset() { *m = GetInfoAttributesReque
func (m *GetInfoAttributesRequest) String() string { return proto.CompactTextString(m) }
func (*GetInfoAttributesRequest) ProtoMessage() {}
func (*GetInfoAttributesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{54}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{54}
}
func (m *GetInfoAttributesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetInfoAttributesRequest.Unmarshal(m, b)
@@ -2516,7 +2516,7 @@ func (m *GetInfoAttributesResponse) Reset() { *m = GetInfoAttributesResp
func (m *GetInfoAttributesResponse) String() string { return proto.CompactTextString(m) }
func (*GetInfoAttributesResponse) ProtoMessage() {}
func (*GetInfoAttributesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{55}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{55}
}
func (m *GetInfoAttributesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetInfoAttributesResponse.Unmarshal(m, b)
@@ -2554,7 +2554,7 @@ func (m *CalculateChecksumRequest) Reset() { *m = CalculateChecksumReque
func (m *CalculateChecksumRequest) String() string { return proto.CompactTextString(m) }
func (*CalculateChecksumRequest) ProtoMessage() {}
func (*CalculateChecksumRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{56}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{56}
}
func (m *CalculateChecksumRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CalculateChecksumRequest.Unmarshal(m, b)
@@ -2592,7 +2592,7 @@ func (m *CalculateChecksumResponse) Reset() { *m = CalculateChecksumResp
func (m *CalculateChecksumResponse) String() string { return proto.CompactTextString(m) }
func (*CalculateChecksumResponse) ProtoMessage() {}
func (*CalculateChecksumResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{57}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{57}
}
func (m *CalculateChecksumResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CalculateChecksumResponse.Unmarshal(m, b)
@@ -2630,7 +2630,7 @@ func (m *GetSnapshotRequest) Reset() { *m = GetSnapshotRequest{} }
func (m *GetSnapshotRequest) String() string { return proto.CompactTextString(m) }
func (*GetSnapshotRequest) ProtoMessage() {}
func (*GetSnapshotRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{58}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{58}
}
func (m *GetSnapshotRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetSnapshotRequest.Unmarshal(m, b)
@@ -2668,7 +2668,7 @@ func (m *GetSnapshotResponse) Reset() { *m = GetSnapshotResponse{} }
func (m *GetSnapshotResponse) String() string { return proto.CompactTextString(m) }
func (*GetSnapshotResponse) ProtoMessage() {}
func (*GetSnapshotResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{59}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{59}
}
func (m *GetSnapshotResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetSnapshotResponse.Unmarshal(m, b)
@@ -2708,7 +2708,7 @@ func (m *CreateRepositoryFromSnapshotRequest) Reset() { *m = CreateRepos
func (m *CreateRepositoryFromSnapshotRequest) String() string { return proto.CompactTextString(m) }
func (*CreateRepositoryFromSnapshotRequest) ProtoMessage() {}
func (*CreateRepositoryFromSnapshotRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{60}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{60}
}
func (m *CreateRepositoryFromSnapshotRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateRepositoryFromSnapshotRequest.Unmarshal(m, b)
@@ -2759,7 +2759,7 @@ func (m *CreateRepositoryFromSnapshotResponse) Reset() { *m = CreateRepo
func (m *CreateRepositoryFromSnapshotResponse) String() string { return proto.CompactTextString(m) }
func (*CreateRepositoryFromSnapshotResponse) ProtoMessage() {}
func (*CreateRepositoryFromSnapshotResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{61}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{61}
}
func (m *CreateRepositoryFromSnapshotResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateRepositoryFromSnapshotResponse.Unmarshal(m, b)
@@ -2792,7 +2792,7 @@ func (m *GetRawChangesRequest) Reset() { *m = GetRawChangesRequest{} }
func (m *GetRawChangesRequest) String() string { return proto.CompactTextString(m) }
func (*GetRawChangesRequest) ProtoMessage() {}
func (*GetRawChangesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{62}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{62}
}
func (m *GetRawChangesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetRawChangesRequest.Unmarshal(m, b)
@@ -2844,7 +2844,7 @@ func (m *GetRawChangesResponse) Reset() { *m = GetRawChangesResponse{} }
func (m *GetRawChangesResponse) String() string { return proto.CompactTextString(m) }
func (*GetRawChangesResponse) ProtoMessage() {}
func (*GetRawChangesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{63}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{63}
}
func (m *GetRawChangesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetRawChangesResponse.Unmarshal(m, b)
@@ -2872,24 +2872,28 @@ func (m *GetRawChangesResponse) GetRawChanges() []*GetRawChangesResponse_RawChan
}
type GetRawChangesResponse_RawChange struct {
- BlobId string `protobuf:"bytes,1,opt,name=blob_id,json=blobId,proto3" json:"blob_id,omitempty"`
- Size int64 `protobuf:"varint,2,opt,name=size,proto3" json:"size,omitempty"`
- NewPath string `protobuf:"bytes,3,opt,name=new_path,json=newPath,proto3" json:"new_path,omitempty"`
- OldPath string `protobuf:"bytes,4,opt,name=old_path,json=oldPath,proto3" json:"old_path,omitempty"`
- Operation GetRawChangesResponse_RawChange_Operation `protobuf:"varint,5,opt,name=operation,proto3,enum=gitaly.GetRawChangesResponse_RawChange_Operation" json:"operation,omitempty"`
- RawOperation string `protobuf:"bytes,6,opt,name=raw_operation,json=rawOperation,proto3" json:"raw_operation,omitempty"`
- OldMode int32 `protobuf:"varint,7,opt,name=old_mode,json=oldMode,proto3" json:"old_mode,omitempty"`
- NewMode int32 `protobuf:"varint,8,opt,name=new_mode,json=newMode,proto3" json:"new_mode,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
+ BlobId string `protobuf:"bytes,1,opt,name=blob_id,json=blobId,proto3" json:"blob_id,omitempty"`
+ Size int64 `protobuf:"varint,2,opt,name=size,proto3" json:"size,omitempty"`
+ // use fields 9 and 10 in place of 3 and 4 (respectively)
+ NewPath string `protobuf:"bytes,3,opt,name=new_path,json=newPath,proto3" json:"new_path,omitempty"` // Deprecated: Do not use.
+ OldPath string `protobuf:"bytes,4,opt,name=old_path,json=oldPath,proto3" json:"old_path,omitempty"` // Deprecated: Do not use.
+ Operation GetRawChangesResponse_RawChange_Operation `protobuf:"varint,5,opt,name=operation,proto3,enum=gitaly.GetRawChangesResponse_RawChange_Operation" json:"operation,omitempty"`
+ RawOperation string `protobuf:"bytes,6,opt,name=raw_operation,json=rawOperation,proto3" json:"raw_operation,omitempty"`
+ OldMode int32 `protobuf:"varint,7,opt,name=old_mode,json=oldMode,proto3" json:"old_mode,omitempty"`
+ NewMode int32 `protobuf:"varint,8,opt,name=new_mode,json=newMode,proto3" json:"new_mode,omitempty"`
+ // the following fields, 9 and 10, will eventually replace 3 and 4
+ NewPathBytes []byte `protobuf:"bytes,9,opt,name=new_path_bytes,json=newPathBytes,proto3" json:"new_path_bytes,omitempty"`
+ OldPathBytes []byte `protobuf:"bytes,10,opt,name=old_path_bytes,json=oldPathBytes,proto3" json:"old_path_bytes,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
}
func (m *GetRawChangesResponse_RawChange) Reset() { *m = GetRawChangesResponse_RawChange{} }
func (m *GetRawChangesResponse_RawChange) String() string { return proto.CompactTextString(m) }
func (*GetRawChangesResponse_RawChange) ProtoMessage() {}
func (*GetRawChangesResponse_RawChange) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{63, 0}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{63, 0}
}
func (m *GetRawChangesResponse_RawChange) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetRawChangesResponse_RawChange.Unmarshal(m, b)
@@ -2923,6 +2927,7 @@ func (m *GetRawChangesResponse_RawChange) GetSize() int64 {
return 0
}
+// Deprecated: Do not use.
func (m *GetRawChangesResponse_RawChange) GetNewPath() string {
if m != nil {
return m.NewPath
@@ -2930,6 +2935,7 @@ func (m *GetRawChangesResponse_RawChange) GetNewPath() string {
return ""
}
+// Deprecated: Do not use.
func (m *GetRawChangesResponse_RawChange) GetOldPath() string {
if m != nil {
return m.OldPath
@@ -2965,6 +2971,20 @@ func (m *GetRawChangesResponse_RawChange) GetNewMode() int32 {
return 0
}
+func (m *GetRawChangesResponse_RawChange) GetNewPathBytes() []byte {
+ if m != nil {
+ return m.NewPathBytes
+ }
+ return nil
+}
+
+func (m *GetRawChangesResponse_RawChange) GetOldPathBytes() []byte {
+ if m != nil {
+ return m.OldPathBytes
+ }
+ return nil
+}
+
type SearchFilesByNameRequest struct {
Repository *Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"`
Query string `protobuf:"bytes,2,opt,name=query,proto3" json:"query,omitempty"`
@@ -2978,7 +2998,7 @@ func (m *SearchFilesByNameRequest) Reset() { *m = SearchFilesByNameReque
func (m *SearchFilesByNameRequest) String() string { return proto.CompactTextString(m) }
func (*SearchFilesByNameRequest) ProtoMessage() {}
func (*SearchFilesByNameRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{64}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{64}
}
func (m *SearchFilesByNameRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SearchFilesByNameRequest.Unmarshal(m, b)
@@ -3030,7 +3050,7 @@ func (m *SearchFilesByNameResponse) Reset() { *m = SearchFilesByNameResp
func (m *SearchFilesByNameResponse) String() string { return proto.CompactTextString(m) }
func (*SearchFilesByNameResponse) ProtoMessage() {}
func (*SearchFilesByNameResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{65}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{65}
}
func (m *SearchFilesByNameResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SearchFilesByNameResponse.Unmarshal(m, b)
@@ -3071,7 +3091,7 @@ func (m *SearchFilesByContentRequest) Reset() { *m = SearchFilesByConten
func (m *SearchFilesByContentRequest) String() string { return proto.CompactTextString(m) }
func (*SearchFilesByContentRequest) ProtoMessage() {}
func (*SearchFilesByContentRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{66}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{66}
}
func (m *SearchFilesByContentRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SearchFilesByContentRequest.Unmarshal(m, b)
@@ -3132,7 +3152,7 @@ func (m *SearchFilesByContentResponse) Reset() { *m = SearchFilesByConte
func (m *SearchFilesByContentResponse) String() string { return proto.CompactTextString(m) }
func (*SearchFilesByContentResponse) ProtoMessage() {}
func (*SearchFilesByContentResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{67}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{67}
}
func (m *SearchFilesByContentResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SearchFilesByContentResponse.Unmarshal(m, b)
@@ -3186,7 +3206,7 @@ func (m *PreFetchRequest) Reset() { *m = PreFetchRequest{} }
func (m *PreFetchRequest) String() string { return proto.CompactTextString(m) }
func (*PreFetchRequest) ProtoMessage() {}
func (*PreFetchRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{68}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{68}
}
func (m *PreFetchRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PreFetchRequest.Unmarshal(m, b)
@@ -3237,7 +3257,7 @@ func (m *PreFetchResponse) Reset() { *m = PreFetchResponse{} }
func (m *PreFetchResponse) String() string { return proto.CompactTextString(m) }
func (*PreFetchResponse) ProtoMessage() {}
func (*PreFetchResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{69}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{69}
}
func (m *PreFetchResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PreFetchResponse.Unmarshal(m, b)
@@ -3271,7 +3291,7 @@ func (m *Remote) Reset() { *m = Remote{} }
func (m *Remote) String() string { return proto.CompactTextString(m) }
func (*Remote) ProtoMessage() {}
func (*Remote) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{70}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{70}
}
func (m *Remote) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Remote.Unmarshal(m, b)
@@ -3332,7 +3352,7 @@ func (m *FetchHTTPRemoteRequest) Reset() { *m = FetchHTTPRemoteRequest{}
func (m *FetchHTTPRemoteRequest) String() string { return proto.CompactTextString(m) }
func (*FetchHTTPRemoteRequest) ProtoMessage() {}
func (*FetchHTTPRemoteRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{71}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{71}
}
func (m *FetchHTTPRemoteRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FetchHTTPRemoteRequest.Unmarshal(m, b)
@@ -3383,7 +3403,7 @@ func (m *FetchHTTPRemoteResponse) Reset() { *m = FetchHTTPRemoteResponse
func (m *FetchHTTPRemoteResponse) String() string { return proto.CompactTextString(m) }
func (*FetchHTTPRemoteResponse) ProtoMessage() {}
func (*FetchHTTPRemoteResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_repository_service_0ca6892fce27f4a0, []int{72}
+ return fileDescriptor_repository_service_d00c9438dcbaa535, []int{72}
}
func (m *FetchHTTPRemoteResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FetchHTTPRemoteResponse.Unmarshal(m, b)
@@ -4996,181 +5016,182 @@ var _RepositoryService_serviceDesc = grpc.ServiceDesc{
}
func init() {
- proto.RegisterFile("repository-service.proto", fileDescriptor_repository_service_0ca6892fce27f4a0)
-}
-
-var fileDescriptor_repository_service_0ca6892fce27f4a0 = []byte{
- // 2742 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x5a, 0xdd, 0x72, 0x1b, 0xb7,
- 0x15, 0xe6, 0x8f, 0x24, 0x92, 0x87, 0xb4, 0x4d, 0x41, 0xb2, 0x45, 0xd2, 0xff, 0x6b, 0x37, 0x71,
- 0xfe, 0xe4, 0x44, 0xba, 0x68, 0x26, 0x6d, 0xc7, 0xa3, 0x7f, 0x29, 0xb1, 0x25, 0x65, 0x25, 0xc7,
- 0x53, 0x4f, 0x3a, 0x3b, 0xab, 0x25, 0x28, 0x6e, 0xb5, 0x5c, 0x30, 0x58, 0xd0, 0x8a, 0xd2, 0x99,
- 0xde, 0x65, 0x3a, 0xbd, 0x4b, 0x6f, 0xfa, 0xf3, 0x0e, 0x7d, 0x82, 0xde, 0xf5, 0x0d, 0x7a, 0xdf,
- 0x27, 0xe8, 0x6d, 0x9f, 0xa0, 0x03, 0x60, 0x17, 0xd8, 0xe5, 0xee, 0xb2, 0xee, 0x90, 0x93, 0xde,
- 0x2d, 0xce, 0x01, 0x0e, 0x0e, 0xce, 0x39, 0x38, 0xc0, 0xf9, 0xb0, 0xd0, 0xa2, 0x78, 0x48, 0x02,
- 0x97, 0x11, 0x7a, 0xf5, 0x51, 0x80, 0xe9, 0x1b, 0xd7, 0xc1, 0xab, 0x43, 0x4a, 0x18, 0x41, 0x0b,
- 0xe7, 0x2e, 0xb3, 0xbd, 0xab, 0x4e, 0x23, 0xe8, 0xdb, 0x14, 0x77, 0x25, 0xd5, 0x78, 0x09, 0x2b,
- 0xa6, 0x1a, 0xb1, 0xf3, 0xad, 0x1b, 0xb0, 0xc0, 0xc4, 0xdf, 0x8c, 0x70, 0xc0, 0xd0, 0x1a, 0x80,
- 0x16, 0xd6, 0x2a, 0x3e, 0x28, 0x3e, 0xa9, 0xaf, 0xa1, 0x55, 0x29, 0x65, 0x55, 0x0f, 0x32, 0x63,
- 0xbd, 0x3e, 0x5b, 0xf8, 0xf7, 0x9f, 0x9e, 0x94, 0xaa, 0x25, 0x63, 0x0d, 0x5a, 0x69, 0xb1, 0xc1,
- 0x90, 0xf8, 0x01, 0x46, 0xb7, 0x60, 0x01, 0x0b, 0x8a, 0x90, 0x59, 0x35, 0xc3, 0x96, 0xf1, 0x95,
- 0x18, 0x63, 0x3b, 0x17, 0x07, 0xbe, 0x43, 0xf1, 0x00, 0xfb, 0xcc, 0xf6, 0xa6, 0xd7, 0xa5, 0x68,
- 0xdc, 0x86, 0x76, 0x86, 0x5c, 0xa9, 0x8c, 0xc1, 0x60, 0x51, 0x32, 0x77, 0x47, 0xde, 0x34, 0xb3,
- 0xa1, 0x47, 0x70, 0xcd, 0xa1, 0xd8, 0x66, 0xd8, 0x3a, 0x73, 0xd9, 0xc0, 0x1e, 0xb6, 0x4a, 0x62,
- 0x71, 0x0d, 0x49, 0xdc, 0x14, 0x34, 0xa5, 0xd2, 0x32, 0xa0, 0xf8, 0xac, 0xa1, 0x2e, 0xdf, 0xc2,
- 0xcd, 0x3d, 0x9b, 0x9e, 0xd9, 0xe7, 0x78, 0x8b, 0x78, 0x1e, 0x76, 0xd8, 0x8f, 0xa6, 0x4f, 0x0b,
- 0x6e, 0x8d, 0xcf, 0x1c, 0xea, 0xf4, 0x1c, 0xae, 0x6f, 0x79, 0xd8, 0xf6, 0x47, 0xc3, 0x59, 0xb8,
- 0x62, 0x11, 0x6e, 0x28, 0x69, 0xe1, 0x04, 0x27, 0x70, 0x53, 0x0f, 0x3a, 0x71, 0xbf, 0xc3, 0xb3,
- 0x08, 0xbf, 0x0f, 0xe1, 0xd6, 0xb8, 0xd0, 0x30, 0xf8, 0x10, 0xcc, 0x05, 0xee, 0x77, 0x58, 0xc8,
- 0x2b, 0x9b, 0xe2, 0xdb, 0x08, 0xa0, 0xbd, 0x31, 0x1c, 0x7a, 0x57, 0x7b, 0x2e, 0xb3, 0x19, 0xa3,
- 0xee, 0xd9, 0x88, 0xe1, 0x69, 0x76, 0x01, 0xea, 0x40, 0x95, 0xe2, 0x37, 0x6e, 0xe0, 0x12, 0x5f,
- 0x98, 0xbd, 0x61, 0xaa, 0xb6, 0x32, 0xc5, 0x1d, 0xe8, 0x64, 0x4d, 0x1a, 0x5a, 0xe5, 0xef, 0x25,
- 0x40, 0xbb, 0x98, 0x39, 0x7d, 0x13, 0x0f, 0x08, 0x9b, 0xc6, 0x26, 0x7c, 0xbb, 0x51, 0x21, 0x44,
- 0xa8, 0x52, 0x33, 0xc3, 0x16, 0x5a, 0x86, 0xf9, 0x1e, 0xa1, 0x0e, 0x6e, 0x95, 0x45, 0x60, 0xc8,
- 0x06, 0x5a, 0x81, 0x8a, 0x4f, 0x2c, 0x66, 0x9f, 0x07, 0xad, 0x39, 0xb9, 0x3b, 0x7d, 0x72, 0x6a,
- 0x9f, 0x07, 0xa8, 0x05, 0x15, 0xe6, 0x0e, 0x30, 0x19, 0xb1, 0xd6, 0xfc, 0x83, 0xe2, 0x93, 0x79,
- 0x33, 0x6a, 0xf2, 0x21, 0x41, 0xd0, 0xb7, 0x2e, 0xf0, 0x55, 0x6b, 0x41, 0xce, 0x10, 0x04, 0xfd,
- 0x2f, 0xf0, 0x15, 0xba, 0x0f, 0xf5, 0x0b, 0x9f, 0x5c, 0xfa, 0x56, 0x9f, 0xf0, 0xdd, 0x5e, 0x11,
- 0x4c, 0x10, 0xa4, 0x7d, 0x4e, 0x41, 0x6d, 0xa8, 0xfa, 0xc4, 0x1a, 0xd2, 0x91, 0x8f, 0x5b, 0x35,
- 0x31, 0x5b, 0xc5, 0x27, 0xc7, 0xbc, 0x89, 0xd6, 0xe1, 0x9a, 0xd4, 0xd3, 0x1a, 0xda, 0xd4, 0x1e,
- 0x04, 0x2d, 0x10, 0x8b, 0xbd, 0xae, 0x17, 0x2b, 0xec, 0xd2, 0x90, 0x9d, 0x8e, 0x45, 0x9f, 0xc8,
- 0xb6, 0x9f, 0xcf, 0x55, 0xab, 0xcd, 0x9a, 0x71, 0x13, 0x96, 0x12, 0x26, 0x0c, 0x4d, 0xfb, 0x12,
- 0x56, 0xb6, 0xc4, 0x1e, 0x88, 0xd9, 0x6b, 0x06, 0xa1, 0xdd, 0x81, 0x56, 0x5a, 0x6c, 0x38, 0xe5,
- 0xef, 0x4a, 0xb0, 0xb8, 0x87, 0xd9, 0x06, 0x75, 0xfa, 0xee, 0x9b, 0xa9, 0x9c, 0x79, 0x1b, 0x6a,
- 0x0e, 0x19, 0x0c, 0x5c, 0x66, 0xb9, 0xdd, 0xd0, 0x9f, 0x55, 0x49, 0x38, 0xe8, 0x72, 0x4f, 0x0f,
- 0x29, 0xee, 0xb9, 0xdf, 0x0a, 0x97, 0xd6, 0xcc, 0xb0, 0x85, 0x3e, 0x85, 0x85, 0x1e, 0xa1, 0x03,
- 0x9b, 0x09, 0x97, 0x5e, 0x5f, 0x7b, 0x10, 0x4d, 0x92, 0xd2, 0x69, 0x75, 0x57, 0xf4, 0x33, 0xc3,
- 0xfe, 0x7c, 0xb7, 0x0c, 0x6d, 0xd6, 0x17, 0x1e, 0x6f, 0x98, 0xe2, 0xdb, 0x58, 0x87, 0x05, 0xd9,
- 0x0b, 0x55, 0xa0, 0xfc, 0xfa, 0xe0, 0xb8, 0x59, 0xe0, 0x1f, 0xa7, 0x1b, 0x66, 0xb3, 0x88, 0x00,
- 0x16, 0x4e, 0x37, 0x4c, 0x6b, 0xef, 0x75, 0xb3, 0x84, 0xea, 0x50, 0xe1, 0xdf, 0x9b, 0xaf, 0xd7,
- 0x9a, 0x65, 0xb5, 0x31, 0x9f, 0x00, 0x8a, 0x4f, 0xaa, 0x37, 0x65, 0xd7, 0x66, 0xb6, 0xb0, 0x41,
- 0xc3, 0x14, 0xdf, 0xdc, 0x4d, 0xfb, 0x76, 0xf0, 0x9c, 0x38, 0xb6, 0xb7, 0x49, 0x6d, 0xdf, 0xe9,
- 0xe3, 0x99, 0x1c, 0x4c, 0x1f, 0x43, 0x2b, 0x2d, 0x36, 0x54, 0x63, 0x19, 0xe6, 0xdf, 0xd8, 0xde,
- 0x08, 0x87, 0xe7, 0x92, 0x6c, 0x18, 0xff, 0x2c, 0x42, 0x4b, 0xc4, 0xd1, 0x09, 0x19, 0x51, 0x07,
- 0xcb, 0x51, 0xd3, 0xf8, 0xf0, 0x19, 0x2c, 0x06, 0x42, 0x94, 0x15, 0x1b, 0x5a, 0xca, 0x1d, 0xda,
- 0x94, 0x9d, 0xcd, 0x44, 0x6a, 0x0f, 0x05, 0x9c, 0x09, 0x65, 0x84, 0xbb, 0x1b, 0x66, 0x23, 0x88,
- 0x29, 0x88, 0xee, 0x02, 0x30, 0x9b, 0x9e, 0x63, 0x66, 0x51, 0xdc, 0x13, 0x8e, 0x6f, 0x98, 0x35,
- 0x49, 0x31, 0x71, 0x4f, 0x85, 0xed, 0x3a, 0xb4, 0x33, 0x16, 0xa7, 0x4f, 0x6a, 0x8a, 0x83, 0x91,
- 0xc7, 0xa2, 0x93, 0x5a, 0xb6, 0x8c, 0x03, 0xa8, 0xef, 0x06, 0xce, 0xc5, 0x2c, 0xb6, 0xcd, 0x63,
- 0x68, 0x48, 0x51, 0xda, 0x07, 0x98, 0x52, 0x42, 0xc3, 0x58, 0x90, 0x0d, 0xe3, 0x6f, 0x45, 0xb8,
- 0xf1, 0x8a, 0xba, 0x7c, 0x73, 0xf5, 0xa6, 0x31, 0x7d, 0x13, 0xca, 0xdc, 0x1a, 0x32, 0x27, 0xf3,
- 0xcf, 0x44, 0xaa, 0x2e, 0x27, 0x53, 0x35, 0x7a, 0x08, 0x0d, 0xe2, 0x75, 0x2d, 0xc5, 0x97, 0x46,
- 0xac, 0x13, 0xaf, 0x6b, 0x46, 0x5d, 0x54, 0x12, 0x9d, 0x8f, 0x25, 0xd1, 0x58, 0x1e, 0x5a, 0x68,
- 0x56, 0x8c, 0x16, 0x34, 0xb5, 0xee, 0x72, 0x99, 0x9f, 0xcf, 0x55, 0x8b, 0xcd, 0x92, 0x31, 0x84,
- 0xe5, 0x5d, 0xd7, 0xef, 0xbe, 0xc0, 0xf4, 0x1c, 0x6f, 0xda, 0xc1, 0x54, 0x99, 0xe1, 0x0e, 0xd4,
- 0x22, 0x45, 0x83, 0x56, 0xe9, 0x41, 0x99, 0xbb, 0x5b, 0x11, 0x54, 0xf8, 0x7f, 0x00, 0x37, 0xc7,
- 0x66, 0xd4, 0x5b, 0xf0, 0xcc, 0x0e, 0x64, 0xe8, 0xd7, 0x4c, 0xf1, 0x6d, 0xfc, 0x50, 0x84, 0x45,
- 0x99, 0xd3, 0x76, 0x09, 0xbd, 0xf8, 0x7f, 0x86, 0x7c, 0xfc, 0xe2, 0x14, 0xd7, 0x48, 0x5d, 0xe2,
- 0xda, 0x07, 0x81, 0x89, 0xb9, 0xd2, 0x07, 0xfe, 0x31, 0x25, 0xe7, 0x14, 0x07, 0xc1, 0x94, 0x69,
- 0x96, 0x0a, 0x71, 0xb1, 0x34, 0x2b, 0x09, 0x07, 0x5d, 0x65, 0xcb, 0x5f, 0x40, 0x27, 0x6b, 0xd6,
- 0xd0, 0xa0, 0xf7, 0xa1, 0xee, 0xfa, 0xd6, 0x30, 0x24, 0x87, 0x1b, 0x08, 0x5c, 0xd5, 0x51, 0x2a,
- 0x7d, 0xf2, 0xcd, 0xc8, 0x0e, 0xfa, 0x33, 0x53, 0x3a, 0x10, 0xe2, 0x62, 0x4a, 0x4b, 0xc2, 0xb8,
- 0xd2, 0xe9, 0x59, 0xdf, 0x56, 0x69, 0x1f, 0xee, 0x8d, 0x9f, 0x72, 0xbb, 0x94, 0x0c, 0x5e, 0x9a,
- 0xcf, 0xa7, 0xdc, 0x96, 0x23, 0xea, 0x85, 0x3a, 0xf3, 0x4f, 0xe5, 0xef, 0x87, 0x70, 0x3f, 0x77,
- 0xbe, 0xd0, 0xf9, 0x5f, 0xc2, 0x92, 0xec, 0xb2, 0x39, 0xf2, 0xbb, 0xde, 0x4c, 0xae, 0x8f, 0xef,
- 0xc3, 0x72, 0x52, 0xe4, 0x84, 0x73, 0x6a, 0x00, 0x48, 0xec, 0xee, 0x2d, 0xe2, 0xf7, 0xdc, 0xf3,
- 0x29, 0xfd, 0xd7, 0x1b, 0x79, 0x9e, 0x25, 0x4e, 0xdc, 0xd0, 0x7f, 0x9c, 0x70, 0x6c, 0xb3, 0xbe,
- 0x32, 0xc8, 0x07, 0xb0, 0x94, 0x98, 0x6e, 0x62, 0xda, 0xfc, 0xa1, 0x04, 0xcd, 0x13, 0xcc, 0xa6,
- 0x57, 0xed, 0x53, 0xa8, 0x60, 0x9f, 0x51, 0x17, 0xcb, 0xd4, 0x52, 0x5f, 0xbb, 0x17, 0x0d, 0x18,
- 0x17, 0xbf, 0xba, 0xe3, 0x33, 0x7a, 0x65, 0x46, 0xdd, 0x3b, 0xdf, 0x17, 0x61, 0x5e, 0x90, 0xb8,
- 0x93, 0xf9, 0x15, 0x51, 0x26, 0x18, 0xfe, 0x89, 0xee, 0x42, 0x4d, 0x1c, 0xb1, 0x56, 0xc0, 0xa8,
- 0x5c, 0xf0, 0x7e, 0xc1, 0xac, 0x0a, 0xd2, 0x09, 0xa3, 0xe8, 0x21, 0xd4, 0x25, 0xdb, 0xf5, 0xd9,
- 0xfa, 0x9a, 0xc8, 0xce, 0xf3, 0xfb, 0x05, 0x13, 0x04, 0xf1, 0x80, 0xd3, 0xd0, 0x7d, 0x90, 0x2d,
- 0xeb, 0x8c, 0x10, 0x4f, 0x5e, 0x58, 0xf7, 0x0b, 0xa6, 0x94, 0xba, 0x49, 0x88, 0xb7, 0x59, 0x09,
- 0x8f, 0x74, 0x65, 0xbf, 0x25, 0x58, 0x8c, 0xa9, 0x1c, 0x86, 0x10, 0x86, 0xa5, 0x6d, 0xec, 0xe1,
- 0x59, 0x38, 0x11, 0xc1, 0xdc, 0x05, 0xbe, 0x92, 0x66, 0xaa, 0x99, 0xe2, 0x5b, 0xcd, 0x7d, 0x0b,
- 0x96, 0x93, 0xd3, 0x84, 0xd3, 0x5f, 0xf0, 0x02, 0x35, 0x60, 0x84, 0xe2, 0xad, 0x51, 0xc0, 0xc8,
- 0x60, 0x9f, 0x90, 0x8b, 0x60, 0x4a, 0x25, 0x44, 0x9c, 0x96, 0x74, 0x9c, 0xc6, 0xeb, 0x8e, 0xac,
- 0xc9, 0x42, 0x55, 0xbe, 0x82, 0xd6, 0xa6, 0xed, 0x5c, 0x8c, 0x86, 0xb3, 0xd1, 0x44, 0xed, 0xa8,
- 0xa7, 0xd0, 0xce, 0x90, 0x3b, 0x61, 0x5b, 0x05, 0xf0, 0x30, 0x6b, 0xe3, 0x4f, 0xbd, 0xc7, 0x27,
- 0xda, 0xe6, 0x31, 0x18, 0x93, 0x26, 0x0d, 0x6d, 0x74, 0x0c, 0x88, 0x9f, 0xa1, 0xcf, 0x5d, 0x07,
- 0xfb, 0xc1, 0x4c, 0xf2, 0xcd, 0x16, 0x2c, 0x25, 0x24, 0x86, 0x76, 0xf9, 0x10, 0x90, 0x27, 0x49,
- 0x56, 0xd0, 0x27, 0x94, 0x59, 0xbe, 0x3d, 0x88, 0x4e, 0xe8, 0x66, 0xc8, 0x39, 0xe1, 0x8c, 0x43,
- 0x7b, 0x20, 0x5c, 0xb7, 0x87, 0xd9, 0x81, 0xdf, 0x23, 0x1b, 0xb3, 0x28, 0x62, 0x95, 0x72, 0x3f,
- 0x83, 0x76, 0x86, 0xdc, 0x50, 0xc5, 0x7b, 0x00, 0xba, 0x7a, 0x0d, 0x1d, 0x18, 0xa3, 0x70, 0xa5,
- 0xb6, 0x6c, 0xcf, 0x19, 0x79, 0x36, 0xc3, 0x5b, 0x7d, 0xec, 0x5c, 0x04, 0xa3, 0xc1, 0x2c, 0x94,
- 0xfa, 0x29, 0xb4, 0x33, 0xe4, 0x86, 0x4a, 0x75, 0xa0, 0xea, 0x84, 0xb4, 0xd0, 0x5a, 0xaa, 0xcd,
- 0x9d, 0xb7, 0x87, 0xd9, 0x89, 0x6f, 0x0f, 0x83, 0x3e, 0x61, 0xb3, 0x50, 0xe5, 0x3d, 0x58, 0x4a,
- 0x48, 0x9c, 0x10, 0xd4, 0x7f, 0x29, 0xc2, 0xa3, 0xac, 0x00, 0x9b, 0x81, 0x3a, 0xbc, 0x96, 0xee,
- 0x33, 0x36, 0xb4, 0xf4, 0x41, 0x5a, 0xe1, 0xed, 0x97, 0xd4, 0xe3, 0x07, 0x8b, 0x60, 0xd9, 0x23,
- 0xd6, 0x0f, 0x4b, 0x43, 0xd1, 0x77, 0x63, 0x14, 0x3b, 0x58, 0xde, 0x81, 0xc7, 0x93, 0x55, 0x0b,
- 0xa3, 0xff, 0xcf, 0x45, 0x58, 0xde, 0xc3, 0xcc, 0xb4, 0x2f, 0xb7, 0xfa, 0xb6, 0x7f, 0x3e, 0x1d,
- 0x50, 0xf2, 0x08, 0xae, 0xf5, 0x28, 0x19, 0x58, 0x09, 0xb4, 0xa4, 0x66, 0x36, 0x38, 0x51, 0xdd,
- 0xb1, 0xef, 0x43, 0x9d, 0x11, 0x2b, 0x71, 0x4b, 0xaf, 0x99, 0xc0, 0x88, 0x99, 0x84, 0x54, 0x4a,
- 0xc6, 0xbf, 0xca, 0x70, 0x73, 0x4c, 0xb5, 0xd0, 0x19, 0xfb, 0x50, 0xa7, 0xf6, 0xa5, 0xe5, 0x48,
- 0x72, 0xab, 0x28, 0xce, 0xb0, 0x77, 0x63, 0x65, 0x70, 0x7a, 0xcc, 0xaa, 0x22, 0x99, 0x40, 0x15,
- 0xb7, 0xf3, 0x7d, 0x19, 0x6a, 0x8a, 0x83, 0x56, 0xa0, 0x72, 0xe6, 0x91, 0x33, 0x7e, 0xe1, 0x92,
- 0x81, 0xb6, 0xc0, 0x9b, 0x07, 0x5d, 0x05, 0x33, 0x95, 0x34, 0xcc, 0x24, 0xd0, 0x0e, 0x7c, 0x29,
- 0x8f, 0x77, 0xb9, 0x88, 0x8a, 0x8f, 0x2f, 0xf9, 0xe9, 0xce, 0x59, 0xbc, 0xd2, 0x10, 0xac, 0x39,
- 0xc9, 0x22, 0x5e, 0x57, 0xb0, 0x8e, 0xa0, 0x46, 0x86, 0x98, 0xda, 0x8c, 0xaf, 0x7d, 0x5e, 0xd4,
- 0xef, 0x9f, 0xbc, 0xa5, 0xe2, 0xab, 0x47, 0xd1, 0x40, 0x53, 0xcb, 0xe0, 0x36, 0xe7, 0xb6, 0xd0,
- 0x42, 0x25, 0x68, 0xd3, 0xa0, 0xf6, 0xa5, 0xea, 0x1f, 0x29, 0x34, 0x20, 0x5d, 0x2c, 0x70, 0x9b,
- 0x79, 0xa1, 0xd0, 0x0b, 0xd2, 0x55, 0xcb, 0x10, 0xac, 0xaa, 0x64, 0xf9, 0xf8, 0x92, 0xb3, 0x0c,
- 0x17, 0x6a, 0x5a, 0x44, 0x1d, 0x2a, 0x2f, 0x0f, 0xbf, 0x38, 0x3c, 0x7a, 0x75, 0xd8, 0x2c, 0xa0,
- 0x1a, 0xcc, 0x6f, 0x6c, 0x6f, 0xef, 0x6c, 0x4b, 0x8c, 0x60, 0xeb, 0xe8, 0xf8, 0x60, 0x67, 0x5b,
- 0x62, 0x04, 0xdb, 0x3b, 0xcf, 0x77, 0x4e, 0x77, 0xb6, 0x9b, 0x65, 0xd4, 0x80, 0xea, 0x8b, 0xa3,
- 0xed, 0x83, 0x5d, 0xce, 0x9a, 0xe3, 0x2c, 0x73, 0xe7, 0x70, 0xe3, 0xc5, 0xce, 0x76, 0x73, 0x1e,
- 0x35, 0xa1, 0x71, 0xfa, 0xcb, 0xe3, 0x1d, 0x6b, 0x6b, 0x7f, 0xe3, 0x70, 0x6f, 0x67, 0xbb, 0xb9,
- 0x60, 0xfc, 0x16, 0x5a, 0x27, 0xd8, 0xa6, 0x4e, 0x7f, 0xd7, 0xf5, 0x70, 0xb0, 0x79, 0xc5, 0x53,
- 0xe0, 0x34, 0x91, 0xb8, 0x0c, 0xf3, 0xdf, 0x8c, 0x70, 0x58, 0x95, 0xd4, 0x4c, 0xd9, 0x88, 0xea,
- 0xc5, 0xb2, 0xaa, 0x17, 0x55, 0xac, 0x7d, 0x02, 0xed, 0x8c, 0xf9, 0xf5, 0x6d, 0xac, 0xc7, 0xc9,
- 0x22, 0xd0, 0x1a, 0xa6, 0x6c, 0x18, 0x7f, 0x2d, 0xc2, 0xed, 0xc4, 0x98, 0x2d, 0xe2, 0x33, 0xec,
- 0xb3, 0x1f, 0x41, 0x6d, 0xf4, 0x1e, 0x34, 0x9d, 0xfe, 0xc8, 0xbf, 0xc0, 0xbc, 0x9c, 0x95, 0x5a,
- 0x86, 0xf8, 0xde, 0x8d, 0x90, 0x1e, 0x29, 0xaf, 0x56, 0x78, 0x05, 0x77, 0xb2, 0xb5, 0x0d, 0x17,
- 0xd9, 0x82, 0xca, 0xc0, 0x66, 0x4e, 0x5f, 0x2d, 0x33, 0x6a, 0xa2, 0xbb, 0x00, 0xe2, 0xd3, 0x8a,
- 0x1d, 0xb4, 0x35, 0x41, 0xd9, 0xb6, 0x99, 0x8d, 0x1e, 0x40, 0x03, 0xfb, 0x5d, 0x8b, 0xf4, 0x2c,
- 0x41, 0x0b, 0xf1, 0x47, 0xc0, 0x7e, 0xf7, 0xa8, 0xf7, 0x82, 0x53, 0x8c, 0x7f, 0x14, 0xe1, 0xc6,
- 0x31, 0xc5, 0x21, 0x7a, 0x27, 0xad, 0x93, 0x59, 0x42, 0x16, 0xff, 0x07, 0xd4, 0xe4, 0x19, 0x2c,
- 0x2a, 0x40, 0xe4, 0x6d, 0x6a, 0xd0, 0x08, 0x2b, 0x51, 0x02, 0xd6, 0xa1, 0x4e, 0xce, 0x7e, 0x8d,
- 0x1d, 0x66, 0x0d, 0xf9, 0x6d, 0xb3, 0x9c, 0x1c, 0x7a, 0x24, 0x58, 0xc7, 0x84, 0x78, 0x26, 0x10,
- 0xf5, 0xad, 0xac, 0x89, 0xa0, 0xa9, 0x57, 0x14, 0xa6, 0xd2, 0x3f, 0x14, 0x61, 0x41, 0x82, 0x93,
- 0x51, 0x05, 0x54, 0x54, 0x15, 0x10, 0xcf, 0x20, 0xe2, 0xb8, 0x97, 0x8e, 0x15, 0xdf, 0xe8, 0x33,
- 0x68, 0xab, 0x44, 0x4e, 0xa8, 0xfb, 0x9d, 0xd8, 0x68, 0x56, 0x1f, 0xdb, 0x5d, 0x4c, 0xc3, 0x94,
- 0xb2, 0x12, 0x25, 0x76, 0xc5, 0xdf, 0x17, 0x6c, 0xf4, 0x13, 0xb8, 0x3e, 0x70, 0x79, 0x55, 0x60,
- 0x51, 0xdc, 0x1b, 0xd8, 0xc3, 0xa0, 0x35, 0x27, 0xae, 0xa8, 0xd7, 0x24, 0xd5, 0x94, 0x44, 0xe3,
- 0x8f, 0x45, 0xb8, 0x25, 0xb4, 0xdc, 0x3f, 0x3d, 0x3d, 0x9e, 0x1e, 0x7c, 0x7e, 0x27, 0x01, 0x3e,
- 0xa7, 0xf1, 0xdb, 0x08, 0x8c, 0x8e, 0xa1, 0xcb, 0xe5, 0x04, 0xba, 0xac, 0x0c, 0xd8, 0x86, 0x95,
- 0x94, 0x5e, 0xd2, 0x8e, 0x6b, 0xbf, 0x6f, 0x89, 0x47, 0x9c, 0x08, 0xee, 0x97, 0xaf, 0x5e, 0xe8,
- 0x15, 0x34, 0xc7, 0x9f, 0xa0, 0xd0, 0xfd, 0xb4, 0xba, 0x89, 0x37, 0xaf, 0xce, 0x83, 0xfc, 0x0e,
- 0xa1, 0xd3, 0x0a, 0xe8, 0x75, 0xf4, 0x64, 0x14, 0x7b, 0x4f, 0x42, 0xf1, 0x81, 0x99, 0x4f, 0x58,
- 0x9d, 0x87, 0x13, 0x7a, 0x28, 0xd9, 0x3b, 0x00, 0xfa, 0x61, 0x08, 0xb5, 0x93, 0x43, 0x62, 0x4f,
- 0x54, 0x9d, 0x4e, 0x16, 0x4b, 0x89, 0xf9, 0x12, 0xae, 0x27, 0xdf, 0x73, 0xd0, 0x5d, 0x75, 0x66,
- 0x64, 0xbd, 0x30, 0x75, 0xee, 0xe5, 0xb1, 0xe3, 0x22, 0x93, 0x4f, 0x2a, 0x5a, 0x64, 0xe6, 0xfb,
- 0x8d, 0x16, 0x99, 0xfd, 0x12, 0x63, 0x14, 0xd0, 0xaf, 0x00, 0xa5, 0x9f, 0x40, 0x90, 0xb2, 0x53,
- 0xee, 0x9b, 0x4c, 0xc7, 0x98, 0xd4, 0x45, 0x89, 0xdf, 0x87, 0x7a, 0x0c, 0xff, 0x47, 0xca, 0x62,
- 0xe9, 0x77, 0x95, 0xce, 0xed, 0x4c, 0x9e, 0x92, 0xf4, 0x0a, 0x9a, 0xe3, 0x77, 0x23, 0x1d, 0x4a,
- 0x39, 0x8f, 0x09, 0x3a, 0x94, 0x72, 0x9f, 0x05, 0x0a, 0x68, 0x0f, 0x40, 0xc3, 0xe1, 0xda, 0xdd,
- 0x29, 0x5c, 0x5e, 0xbb, 0x3b, 0x8d, 0x9e, 0x1b, 0x85, 0x8f, 0x8b, 0x5c, 0xc3, 0x71, 0x58, 0x5b,
- 0x6b, 0x98, 0x83, 0xa3, 0x6b, 0x0d, 0xf3, 0x10, 0x71, 0x19, 0xec, 0x29, 0x7c, 0x58, 0x07, 0x7b,
- 0x1e, 0x2e, 0xae, 0x83, 0x3d, 0x17, 0x5c, 0x36, 0x0a, 0x68, 0x1d, 0xe6, 0x76, 0x03, 0xe7, 0x02,
- 0x2d, 0xa9, 0xce, 0x1a, 0x54, 0xee, 0x2c, 0x27, 0x89, 0x6a, 0xd0, 0x33, 0xa8, 0x46, 0x68, 0x2a,
- 0x5a, 0x89, 0xfa, 0x8c, 0x61, 0xc3, 0x9d, 0x56, 0x9a, 0xa1, 0x04, 0x1c, 0xc2, 0xb5, 0x04, 0x04,
- 0x8a, 0xee, 0xa8, 0x99, 0x32, 0xb0, 0xd8, 0xce, 0xdd, 0x1c, 0x6e, 0x7c, 0xcb, 0x6a, 0x48, 0x52,
- 0xfb, 0x30, 0x05, 0x9c, 0x6a, 0x1f, 0x66, 0x20, 0x98, 0x62, 0x33, 0xa4, 0xd1, 0x44, 0xbd, 0x19,
- 0x72, 0xf1, 0x4d, 0xbd, 0x19, 0xf2, 0xc1, 0xc8, 0x48, 0xfc, 0x38, 0xee, 0x17, 0x17, 0x9f, 0x83,
- 0x44, 0xc6, 0xc5, 0xe7, 0xc1, 0x86, 0x46, 0x01, 0x79, 0xe9, 0x47, 0xb5, 0x10, 0xa7, 0x43, 0xef,
- 0xe4, 0xed, 0x83, 0x24, 0x70, 0xd8, 0x79, 0xf7, 0xbf, 0xf6, 0x53, 0xb3, 0xbd, 0x80, 0x46, 0x1c,
- 0x9f, 0x43, 0xb7, 0x93, 0x43, 0x13, 0x20, 0x41, 0xe7, 0x4e, 0x36, 0x33, 0xb6, 0x79, 0x2e, 0xa1,
- 0x93, 0x5f, 0xf6, 0xa3, 0xf7, 0x26, 0xe9, 0x95, 0x9c, 0xea, 0xfd, 0xb7, 0xe9, 0x1a, 0x4d, 0xfc,
- 0xa4, 0xc8, 0x33, 0x54, 0x0c, 0xcc, 0xd3, 0x19, 0x2a, 0x0d, 0x28, 0xea, 0x0c, 0x95, 0x81, 0xfe,
- 0x19, 0x05, 0xb4, 0x09, 0x35, 0x05, 0x6b, 0xa1, 0x56, 0x1e, 0x38, 0xd7, 0x69, 0x67, 0x70, 0x94,
- 0x8c, 0x2f, 0xa0, 0x11, 0x87, 0xa7, 0xb4, 0x55, 0x33, 0xb0, 0x31, 0x6d, 0xd5, 0x4c, 0x44, 0x4b,
- 0x26, 0x5f, 0x0d, 0x69, 0xc4, 0x92, 0x6f, 0x0a, 0x39, 0x89, 0x25, 0xdf, 0x34, 0x06, 0x62, 0x14,
- 0xd0, 0xd7, 0xe2, 0xed, 0x34, 0x89, 0x3f, 0xa0, 0xf8, 0x13, 0x66, 0x26, 0xe4, 0xa1, 0x33, 0x50,
- 0x2e, 0x78, 0x21, 0x7c, 0xff, 0x1a, 0x16, 0x53, 0x40, 0x82, 0x96, 0x9e, 0x87, 0x5d, 0x68, 0xe9,
- 0xb9, 0x28, 0x84, 0x51, 0x40, 0x3f, 0x87, 0x4a, 0xf8, 0xb7, 0x03, 0xba, 0xa5, 0xfa, 0x27, 0x7e,
- 0xa6, 0xe8, 0xac, 0xa4, 0xe8, 0x6a, 0xf4, 0xe7, 0x50, 0x8f, 0xe1, 0x0a, 0x28, 0x7e, 0x02, 0x8c,
- 0xe1, 0x05, 0xda, 0x82, 0x19, 0x40, 0x84, 0x58, 0xe5, 0x6f, 0xe0, 0xce, 0xa4, 0xe2, 0x1e, 0x7d,
- 0x30, 0x29, 0x70, 0xc7, 0x67, 0xfb, 0xf0, 0xed, 0x3a, 0xab, 0x85, 0x1c, 0xc3, 0xb5, 0x44, 0xa1,
- 0xaa, 0x13, 0x6e, 0x16, 0x8e, 0xa0, 0x13, 0x6e, 0x66, 0x75, 0x2b, 0x96, 0x83, 0x61, 0x39, 0xab,
- 0x34, 0x41, 0x8f, 0x74, 0x78, 0xe7, 0x96, 0x59, 0x9d, 0xc7, 0x93, 0x3b, 0xc5, 0xa6, 0xf9, 0x1a,
- 0x16, 0x53, 0x35, 0x9e, 0x8e, 0x8d, 0xbc, 0xf2, 0x53, 0xc7, 0x46, 0x6e, 0x81, 0x28, 0xa4, 0x5b,
- 0x80, 0xd2, 0x40, 0x2c, 0x8a, 0xdd, 0x12, 0x73, 0x10, 0x61, 0x9d, 0x91, 0x27, 0xe0, 0xb8, 0x3c,
- 0xbb, 0x7c, 0x0d, 0x8b, 0x29, 0xcc, 0x55, 0xab, 0x9f, 0x07, 0xf3, 0x6a, 0xf5, 0x73, 0x01, 0x5b,
- 0xa1, 0xfe, 0x33, 0xa8, 0x46, 0x05, 0x8d, 0x3e, 0x87, 0xc7, 0x8a, 0x36, 0x7d, 0x0e, 0xa7, 0x6a,
- 0x9f, 0x02, 0x3a, 0x85, 0x1b, 0x63, 0x17, 0x7a, 0x74, 0x2f, 0x71, 0x6b, 0x48, 0x55, 0x20, 0x9d,
- 0xfb, 0xb9, 0xfc, 0x48, 0xea, 0xe6, 0xc7, 0xaf, 0x79, 0x1f, 0xcf, 0x3e, 0x5b, 0x75, 0xc8, 0xe0,
- 0xa9, 0xfc, 0xfc, 0x88, 0xd0, 0xf3, 0xa7, 0x72, 0xe4, 0x47, 0xe2, 0xaf, 0xb7, 0xa7, 0xe7, 0x24,
- 0x6c, 0x0f, 0xcf, 0xce, 0x16, 0x04, 0x69, 0xfd, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x1f, 0x1a,
- 0xa9, 0x8e, 0x3a, 0x27, 0x00, 0x00,
+ proto.RegisterFile("repository-service.proto", fileDescriptor_repository_service_d00c9438dcbaa535)
+}
+
+var fileDescriptor_repository_service_d00c9438dcbaa535 = []byte{
+ // 2760 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x5a, 0x4b, 0x73, 0xdb, 0xc8,
+ 0xf1, 0x37, 0xf5, 0x22, 0xd9, 0xa4, 0x6d, 0x6a, 0x24, 0x5b, 0x24, 0x2c, 0x5b, 0x36, 0xec, 0xff,
+ 0xae, 0xf7, 0x25, 0x7b, 0xa5, 0xc3, 0x7f, 0x93, 0x54, 0x6a, 0x4b, 0x94, 0xa8, 0xc7, 0xda, 0x7a,
+ 0x04, 0xd2, 0x66, 0x2b, 0xae, 0xda, 0x42, 0x40, 0x70, 0x28, 0x22, 0x04, 0x31, 0xdc, 0x01, 0x68,
+ 0xad, 0x5c, 0x95, 0x43, 0x0e, 0xa9, 0xda, 0x53, 0x2a, 0x7b, 0xca, 0x17, 0xc8, 0x27, 0xc8, 0x2d,
+ 0x87, 0xdc, 0x73, 0xcf, 0x29, 0xd7, 0x7c, 0x8c, 0x5c, 0x92, 0x9a, 0x07, 0x30, 0x00, 0x01, 0x30,
+ 0x4e, 0xc1, 0x49, 0x6e, 0x98, 0xee, 0x9e, 0xee, 0x9e, 0x9e, 0x99, 0x9e, 0xe9, 0xdf, 0x00, 0x9a,
+ 0x14, 0x8f, 0x89, 0xef, 0x04, 0x84, 0x5e, 0x7f, 0xe2, 0x63, 0xfa, 0xda, 0xb1, 0xf1, 0xe6, 0x98,
+ 0x92, 0x80, 0xa0, 0xa5, 0x4b, 0x27, 0xb0, 0xdc, 0x6b, 0xad, 0xee, 0x0f, 0x2c, 0x8a, 0x7b, 0x82,
+ 0xaa, 0x1f, 0xc3, 0x9a, 0x11, 0xf5, 0xe8, 0x7c, 0xeb, 0xf8, 0x81, 0x6f, 0xe0, 0x6f, 0x26, 0xd8,
+ 0x0f, 0xd0, 0x16, 0x80, 0x52, 0xd6, 0x2c, 0x3d, 0x2c, 0x3d, 0xad, 0x6d, 0xa1, 0x4d, 0xa1, 0x65,
+ 0x53, 0x75, 0x32, 0x62, 0x52, 0xfa, 0x16, 0x34, 0xd3, 0xea, 0xfc, 0x31, 0xf1, 0x7c, 0x8c, 0xee,
+ 0xc2, 0x12, 0xe6, 0x14, 0xae, 0xab, 0x62, 0xc8, 0x96, 0x7e, 0xc2, 0xfb, 0x58, 0xf6, 0xf0, 0xc8,
+ 0xb3, 0x29, 0x1e, 0x61, 0x2f, 0xb0, 0xdc, 0x22, 0x3e, 0xdc, 0x83, 0x56, 0x86, 0x3e, 0xe1, 0x84,
+ 0xee, 0xc2, 0xb2, 0x60, 0xee, 0x4f, 0xdc, 0x22, 0x56, 0xd0, 0x63, 0xb8, 0x69, 0x53, 0x6c, 0x05,
+ 0xd8, 0xec, 0x3a, 0xc1, 0xc8, 0x1a, 0x37, 0xe7, 0xf8, 0xa0, 0xea, 0x82, 0xd8, 0xe6, 0x34, 0x7d,
+ 0x15, 0x50, 0xdc, 0x9a, 0xf4, 0x61, 0x0c, 0x77, 0x0e, 0x2c, 0xda, 0xb5, 0x2e, 0xf1, 0x2e, 0x71,
+ 0x5d, 0x6c, 0x07, 0xff, 0x71, 0x3f, 0x9a, 0x70, 0x77, 0xda, 0xa2, 0xf4, 0x65, 0x0f, 0x6e, 0xed,
+ 0xba, 0xd8, 0xf2, 0x26, 0xe3, 0x22, 0x21, 0x5f, 0x86, 0xdb, 0x91, 0x16, 0xa9, 0xf8, 0x05, 0xdc,
+ 0x51, 0xc2, 0xe7, 0xce, 0x1b, 0x5c, 0x44, 0xff, 0xc7, 0x70, 0x77, 0x5a, 0x99, 0x5c, 0x54, 0x08,
+ 0x16, 0x7c, 0xe7, 0x0d, 0xe6, 0x7a, 0xe6, 0x0d, 0xfe, 0xad, 0x0f, 0xa1, 0xb5, 0x33, 0x1e, 0xbb,
+ 0xd7, 0x07, 0x4e, 0x60, 0x05, 0x01, 0x75, 0xba, 0x93, 0x00, 0x17, 0x59, 0xd5, 0x48, 0x83, 0x0a,
+ 0xc5, 0xaf, 0x1d, 0xdf, 0x21, 0x1e, 0x0f, 0x6f, 0xdd, 0x88, 0xda, 0xfa, 0x3a, 0x68, 0x59, 0xc6,
+ 0x64, 0x14, 0xfe, 0x38, 0x07, 0x68, 0x1f, 0x07, 0xf6, 0xc0, 0xc0, 0x23, 0x12, 0x14, 0x89, 0x01,
+ 0xdb, 0x3e, 0x94, 0x2b, 0xe1, 0x2e, 0x54, 0x0d, 0xd9, 0x42, 0xab, 0xb0, 0xd8, 0x27, 0xd4, 0xc6,
+ 0xcd, 0x79, 0x3e, 0xf1, 0xa2, 0x81, 0xd6, 0xa0, 0xec, 0x11, 0x33, 0xb0, 0x2e, 0xfd, 0xe6, 0x82,
+ 0xd8, 0x6d, 0x1e, 0xb9, 0xb0, 0x2e, 0x7d, 0xd4, 0x84, 0x72, 0xe0, 0x8c, 0x30, 0x99, 0x04, 0xcd,
+ 0xc5, 0x87, 0xa5, 0xa7, 0x8b, 0x46, 0xd8, 0x64, 0x5d, 0x7c, 0x7f, 0x60, 0x0e, 0xf1, 0x75, 0x73,
+ 0x49, 0x58, 0xf0, 0xfd, 0xc1, 0x0b, 0x7c, 0x8d, 0x36, 0xa0, 0x36, 0xf4, 0xc8, 0x95, 0x67, 0x0e,
+ 0x08, 0xdb, 0xbd, 0x65, 0xce, 0x04, 0x4e, 0x3a, 0x64, 0x14, 0xd4, 0x82, 0x8a, 0x47, 0xcc, 0x31,
+ 0x9d, 0x78, 0xb8, 0x59, 0xe5, 0xd6, 0xca, 0x1e, 0x39, 0x63, 0x4d, 0xb4, 0x0d, 0x37, 0x85, 0x9f,
+ 0xe6, 0xd8, 0xa2, 0xd6, 0xc8, 0x6f, 0x02, 0x1f, 0xec, 0x2d, 0x35, 0x58, 0x1e, 0x97, 0xba, 0x10,
+ 0x3a, 0xe3, 0x32, 0x5f, 0x2c, 0x54, 0x2a, 0x8d, 0xaa, 0x7e, 0x07, 0x56, 0x12, 0xa1, 0x93, 0x21,
+ 0x3d, 0x86, 0xb5, 0x5d, 0xbe, 0xb6, 0x63, 0x71, 0x2a, 0xb0, 0xb4, 0x34, 0x68, 0xa6, 0xd5, 0x49,
+ 0x53, 0xff, 0x28, 0xc1, 0xf2, 0x01, 0x0e, 0x76, 0xa8, 0x3d, 0x70, 0x5e, 0x17, 0x9a, 0xbc, 0x7b,
+ 0x50, 0xb5, 0xc9, 0x68, 0xe4, 0x04, 0xa6, 0xd3, 0x93, 0xf3, 0x57, 0x11, 0x84, 0xa3, 0x1e, 0x9b,
+ 0xd9, 0x31, 0xc5, 0x7d, 0xe7, 0x5b, 0x3e, 0x85, 0x55, 0x43, 0xb6, 0xd0, 0x67, 0xb0, 0xd4, 0x27,
+ 0x74, 0x64, 0x05, 0x7c, 0x0a, 0x6f, 0x6d, 0x3d, 0x0c, 0x8d, 0xa4, 0x7c, 0xda, 0xdc, 0xe7, 0x72,
+ 0x86, 0x94, 0x67, 0xbb, 0x62, 0x6c, 0x05, 0x03, 0x3e, 0xc3, 0x75, 0x83, 0x7f, 0xeb, 0xdb, 0xb0,
+ 0x24, 0xa4, 0x50, 0x19, 0xe6, 0x5f, 0x1d, 0x9d, 0x35, 0x6e, 0xb0, 0x8f, 0x8b, 0x1d, 0xa3, 0x51,
+ 0x42, 0x00, 0x4b, 0x17, 0x3b, 0x86, 0x79, 0xf0, 0xaa, 0x31, 0x87, 0x6a, 0x50, 0x66, 0xdf, 0xed,
+ 0x57, 0x5b, 0x8d, 0x79, 0xfd, 0x29, 0xa0, 0xb8, 0x31, 0xb5, 0xe9, 0x7a, 0x56, 0x60, 0xf1, 0xb1,
+ 0xd7, 0x0d, 0xfe, 0xcd, 0xa6, 0xe5, 0xd0, 0xf2, 0x5f, 0x12, 0xdb, 0x72, 0xdb, 0xd4, 0xf2, 0xec,
+ 0x41, 0xa1, 0x2d, 0xa7, 0x3f, 0x87, 0x66, 0x5a, 0x9d, 0x34, 0xbf, 0x0a, 0x8b, 0xaf, 0x2d, 0x77,
+ 0x82, 0xe5, 0x39, 0x22, 0x1a, 0xfa, 0x5f, 0x4a, 0xd0, 0xe4, 0xeb, 0xe5, 0x9c, 0x4c, 0xa8, 0x8d,
+ 0x45, 0xaf, 0x22, 0x73, 0xf6, 0x39, 0x2c, 0xfb, 0x5c, 0x95, 0x19, 0xeb, 0x3a, 0x97, 0xdb, 0xb5,
+ 0x21, 0x84, 0x8d, 0x44, 0x6a, 0x96, 0x0a, 0xba, 0xdc, 0x19, 0x3e, 0xbd, 0x75, 0xa3, 0xee, 0xc7,
+ 0x1c, 0x44, 0xf7, 0x01, 0x02, 0x8b, 0x5e, 0xe2, 0xc0, 0xa4, 0xb8, 0xcf, 0x27, 0xba, 0x6e, 0x54,
+ 0x05, 0xc5, 0xc0, 0x7d, 0x7d, 0x1b, 0x5a, 0x19, 0x83, 0x52, 0x27, 0x2a, 0xc5, 0xfe, 0xc4, 0x0d,
+ 0xc2, 0x13, 0x55, 0xb4, 0xf4, 0x1d, 0xa8, 0xed, 0xfb, 0xf6, 0xb0, 0x48, 0xfc, 0x9f, 0x40, 0x5d,
+ 0xa8, 0x50, 0x31, 0xc7, 0x94, 0x12, 0x2a, 0xe7, 0x5c, 0x34, 0xf4, 0x3f, 0x94, 0xe0, 0xf6, 0x57,
+ 0xd4, 0x61, 0x9b, 0xa7, 0x5f, 0x24, 0xd4, 0x0d, 0x98, 0x67, 0xa3, 0x17, 0xb9, 0x95, 0x7d, 0x26,
+ 0x52, 0xee, 0x7c, 0x32, 0xe5, 0xa2, 0x47, 0x50, 0x27, 0x6e, 0xcf, 0x8c, 0xf8, 0x22, 0x68, 0x35,
+ 0xe2, 0xf6, 0x8c, 0x50, 0x24, 0x4a, 0x8a, 0x8b, 0xb1, 0xa4, 0xf8, 0xc5, 0x42, 0x65, 0xa9, 0x51,
+ 0xd6, 0x9b, 0xd0, 0x50, 0x3e, 0x8b, 0xe1, 0x7d, 0xb1, 0x50, 0x29, 0x35, 0xe6, 0xf4, 0x01, 0xac,
+ 0xee, 0x3b, 0x5e, 0xef, 0x18, 0xd3, 0x4b, 0xdc, 0xb6, 0xfc, 0x42, 0x3b, 0x7e, 0x1d, 0xaa, 0xa1,
+ 0x83, 0x7e, 0x73, 0xee, 0xe1, 0x3c, 0x9b, 0xd6, 0x88, 0xa0, 0x7f, 0x04, 0x77, 0xa6, 0x2c, 0xa9,
+ 0xad, 0xd5, 0xb5, 0x7c, 0xb1, 0xb4, 0xab, 0x06, 0xff, 0xd6, 0xbf, 0x2b, 0xc1, 0xb2, 0xc8, 0x51,
+ 0xfb, 0x84, 0x0e, 0xff, 0x97, 0x4b, 0x9a, 0x5d, 0x68, 0xe2, 0x9e, 0x44, 0x97, 0xaa, 0xd6, 0x91,
+ 0x6f, 0x60, 0xe6, 0xec, 0x91, 0x77, 0x46, 0xc9, 0x25, 0xc5, 0xbe, 0x5f, 0x30, 0x5d, 0x52, 0xae,
+ 0x2e, 0x96, 0x2e, 0x05, 0xe1, 0xa8, 0xa7, 0xff, 0x18, 0xb4, 0x2c, 0x6b, 0x32, 0x80, 0x1b, 0x50,
+ 0x73, 0x3c, 0x73, 0x2c, 0xc9, 0x72, 0x63, 0x80, 0x13, 0x09, 0x0a, 0x67, 0xcf, 0xbf, 0x99, 0x58,
+ 0xfe, 0xe0, 0x9d, 0x39, 0xeb, 0x73, 0x75, 0x31, 0x67, 0x05, 0x21, 0x74, 0x36, 0x6d, 0xed, 0x6d,
+ 0x9d, 0xed, 0xc3, 0x83, 0xe9, 0xd3, 0x69, 0x9f, 0x92, 0xd1, 0x97, 0xc6, 0xcb, 0x82, 0xdb, 0x6d,
+ 0x42, 0x5d, 0xe9, 0x2b, 0xfb, 0xd4, 0x1f, 0xc1, 0x46, 0xae, 0x1d, 0x39, 0xc9, 0x47, 0xb0, 0x22,
+ 0x44, 0xda, 0x13, 0xaf, 0xe7, 0x16, 0xba, 0xce, 0x7d, 0x08, 0xab, 0x49, 0x55, 0x33, 0xce, 0x15,
+ 0x0c, 0x88, 0xef, 0xd6, 0x5d, 0xe2, 0xf5, 0x9d, 0xcb, 0x82, 0xf3, 0xd4, 0x9f, 0xb8, 0xae, 0xc9,
+ 0x4f, 0x46, 0x39, 0x4f, 0x8c, 0x70, 0xc6, 0x4e, 0xc7, 0x8f, 0x60, 0x25, 0x61, 0x66, 0x66, 0xda,
+ 0xfb, 0x6e, 0x0e, 0x1a, 0xe7, 0x38, 0x28, 0xee, 0xd2, 0x67, 0x50, 0xc6, 0x5e, 0x40, 0x1d, 0x2c,
+ 0x52, 0x44, 0x6d, 0xeb, 0x41, 0xd8, 0x61, 0x5a, 0xfd, 0x66, 0xc7, 0x0b, 0xe8, 0xb5, 0x11, 0x8a,
+ 0x6b, 0xbf, 0x2e, 0xc1, 0x22, 0x27, 0xb1, 0xc9, 0x64, 0x57, 0x36, 0x91, 0x30, 0xd8, 0x27, 0xba,
+ 0x0f, 0x55, 0x7e, 0x24, 0x9a, 0x7e, 0x40, 0xc5, 0x40, 0x0f, 0x6f, 0x18, 0x15, 0x4e, 0x3a, 0x0f,
+ 0x28, 0x7a, 0x04, 0x35, 0xc1, 0x76, 0xbc, 0x60, 0x7b, 0x8b, 0x67, 0xd7, 0xc5, 0xc3, 0x1b, 0x06,
+ 0x70, 0xe2, 0x11, 0xa3, 0xa1, 0x0d, 0x10, 0x2d, 0xb3, 0x4b, 0x88, 0x2b, 0x2e, 0x90, 0x87, 0x37,
+ 0x0c, 0xa1, 0xb5, 0x4d, 0x88, 0xdb, 0x2e, 0xcb, 0x23, 0x58, 0x5f, 0x81, 0xe5, 0x98, 0xab, 0x72,
+ 0xa9, 0x7c, 0x0d, 0x2b, 0x7b, 0xd8, 0xc5, 0xef, 0x62, 0xd2, 0x10, 0x2c, 0x0c, 0xf1, 0xb5, 0x08,
+ 0x4f, 0xd5, 0xe0, 0xdf, 0xfa, 0x5d, 0x58, 0x4d, 0xaa, 0x97, 0x66, 0x6d, 0x56, 0xf8, 0xf9, 0x01,
+ 0xa1, 0x78, 0x77, 0xe2, 0x07, 0x64, 0x74, 0x48, 0xc8, 0xd0, 0x2f, 0x68, 0x9c, 0xaf, 0xc7, 0xb9,
+ 0xd8, 0x7a, 0x5c, 0x07, 0x2d, 0xcb, 0x88, 0x74, 0xe1, 0x04, 0x9a, 0x6d, 0xcb, 0x1e, 0x4e, 0xc6,
+ 0xef, 0xc6, 0x03, 0xfd, 0x19, 0xb4, 0x32, 0xf4, 0xcd, 0xd8, 0x2e, 0x43, 0x78, 0x94, 0xb5, 0x91,
+ 0x0b, 0xef, 0xd9, 0xcc, 0x58, 0x3c, 0x01, 0x7d, 0x96, 0x31, 0x19, 0x93, 0x43, 0x40, 0xec, 0xac,
+ 0x7b, 0xe9, 0xd8, 0xd8, 0x2b, 0x74, 0xa6, 0xea, 0xbb, 0xb0, 0x92, 0xd0, 0x24, 0xe3, 0xf0, 0x31,
+ 0x20, 0x57, 0x90, 0x4c, 0x7f, 0x40, 0x68, 0x60, 0x7a, 0xd6, 0x28, 0x3c, 0x41, 0x1b, 0x92, 0x73,
+ 0xce, 0x18, 0x27, 0xd6, 0x88, 0x4f, 0xd1, 0x01, 0x0e, 0x8e, 0xbc, 0x3e, 0xd9, 0x79, 0x17, 0xc5,
+ 0xa1, 0xfe, 0x23, 0x68, 0x65, 0xe8, 0x93, 0xae, 0x3d, 0x00, 0x50, 0x55, 0xa1, 0x9c, 0xa8, 0x18,
+ 0x85, 0x39, 0xb3, 0x6b, 0xb9, 0xf6, 0xc4, 0xb5, 0x02, 0xbc, 0x3b, 0xc0, 0xf6, 0xd0, 0x9f, 0x8c,
+ 0x8a, 0x38, 0xf3, 0xff, 0xd0, 0xca, 0xd0, 0x27, 0x9d, 0xd1, 0xa0, 0x62, 0x4b, 0x9a, 0x8c, 0x4e,
+ 0xd4, 0x66, 0x93, 0x74, 0x80, 0x83, 0x73, 0xcf, 0x1a, 0xfb, 0x03, 0x52, 0x04, 0x90, 0xd0, 0x3f,
+ 0x80, 0x95, 0x84, 0xa6, 0x19, 0x8b, 0xf5, 0xfb, 0x12, 0x3c, 0xce, 0x5a, 0x40, 0xef, 0xc0, 0x0d,
+ 0x56, 0x93, 0x0e, 0x82, 0x60, 0x6c, 0xaa, 0x83, 0xae, 0xcc, 0xda, 0x5f, 0x52, 0x97, 0x1d, 0x04,
+ 0x9c, 0x65, 0x4d, 0x82, 0x81, 0x2c, 0xb9, 0xb8, 0xec, 0xce, 0x24, 0x18, 0xe8, 0xef, 0xc1, 0x93,
+ 0xd9, 0x2e, 0xc9, 0x55, 0xfd, 0xdb, 0x12, 0xac, 0x1e, 0xe0, 0xc0, 0xb0, 0xae, 0x76, 0x07, 0x96,
+ 0x77, 0x59, 0x0c, 0x60, 0x78, 0x0c, 0x37, 0xfb, 0x94, 0x8c, 0xcc, 0x04, 0xca, 0x50, 0x35, 0xea,
+ 0x8c, 0x18, 0xdd, 0x69, 0x37, 0xa0, 0x16, 0x10, 0x33, 0x71, 0x2b, 0xae, 0x1a, 0x10, 0x90, 0x50,
+ 0x40, 0xff, 0xd3, 0x02, 0xdc, 0x99, 0x72, 0x49, 0x06, 0xff, 0x10, 0x6a, 0xd4, 0xba, 0x32, 0x6d,
+ 0x41, 0x6e, 0x96, 0xf8, 0x59, 0xf3, 0x7e, 0xac, 0x9c, 0x4c, 0xf7, 0xd9, 0x8c, 0x48, 0x06, 0xd0,
+ 0x88, 0xab, 0xfd, 0x75, 0x1e, 0xaa, 0x11, 0x07, 0xad, 0x41, 0xb9, 0xeb, 0x92, 0x2e, 0xbb, 0xf8,
+ 0x88, 0x05, 0xb5, 0xc4, 0x9a, 0x47, 0xbd, 0x08, 0x96, 0x99, 0x53, 0xb0, 0x0c, 0xba, 0x0f, 0x15,
+ 0x0f, 0x5f, 0x89, 0xe3, 0x97, 0x3b, 0xdf, 0x9e, 0x6b, 0x96, 0x8c, 0xb2, 0x87, 0xaf, 0xd8, 0x09,
+ 0xcc, 0xd8, 0xec, 0x56, 0xcf, 0xd9, 0x0b, 0x8a, 0x4d, 0xdc, 0x1e, 0x67, 0x9f, 0x42, 0x95, 0x8c,
+ 0x31, 0xb5, 0x02, 0x36, 0xf6, 0x45, 0x5e, 0x0f, 0x7f, 0xfa, 0x96, 0x03, 0xd8, 0x3c, 0x0d, 0x3b,
+ 0x1a, 0x4a, 0x07, 0x8b, 0x39, 0x8b, 0x89, 0x52, 0x2a, 0x40, 0x8f, 0x3a, 0xb5, 0xae, 0x22, 0x79,
+ 0xb6, 0x8a, 0x98, 0x53, 0x23, 0xd2, 0xc3, 0x1c, 0xf7, 0x58, 0xe4, 0x0e, 0x1d, 0x93, 0x1e, 0xe6,
+ 0xa0, 0x07, 0xbe, 0x12, 0xac, 0x8a, 0x60, 0x79, 0xf8, 0x8a, 0xb3, 0x9e, 0xc0, 0xad, 0x70, 0xa4,
+ 0x66, 0xf7, 0x9a, 0xed, 0xfc, 0xaa, 0xa8, 0xfc, 0xe4, 0x58, 0xdb, 0x8c, 0xc6, 0xa4, 0xc2, 0x01,
+ 0x4b, 0x29, 0x10, 0x52, 0x72, 0xc8, 0x5c, 0x4a, 0x77, 0xa0, 0xaa, 0xdc, 0xa9, 0x41, 0xf9, 0xcb,
+ 0x93, 0x17, 0x27, 0xa7, 0x5f, 0x9d, 0x34, 0x6e, 0xa0, 0x2a, 0x2c, 0xee, 0xec, 0xed, 0x75, 0xf6,
+ 0x44, 0xfd, 0xbe, 0x7b, 0x7a, 0x76, 0xd4, 0xd9, 0x13, 0xf5, 0xfb, 0x5e, 0xe7, 0x65, 0xe7, 0xa2,
+ 0xb3, 0xd7, 0x98, 0x47, 0x75, 0xa8, 0x1c, 0x9f, 0xee, 0x1d, 0xed, 0x33, 0xd6, 0x02, 0x63, 0x19,
+ 0x9d, 0x93, 0x9d, 0xe3, 0xce, 0x5e, 0x63, 0x11, 0x35, 0xa0, 0x7e, 0xf1, 0xb3, 0xb3, 0x8e, 0xb9,
+ 0x7b, 0xb8, 0x73, 0x72, 0xd0, 0xd9, 0x6b, 0x2c, 0xe9, 0xaf, 0xa1, 0x79, 0x8e, 0x2d, 0x6a, 0x0f,
+ 0xf6, 0x1d, 0x17, 0xfb, 0xed, 0x6b, 0x96, 0x2e, 0x8b, 0xac, 0xea, 0x55, 0x58, 0xfc, 0x66, 0x82,
+ 0x65, 0x85, 0x51, 0x35, 0x44, 0x23, 0xac, 0xf5, 0xe6, 0xa3, 0x5a, 0x4f, 0xff, 0x14, 0x5a, 0x19,
+ 0x76, 0xd5, 0x0d, 0xac, 0xcf, 0xc8, 0x7c, 0xd1, 0xd6, 0x0d, 0xd1, 0xd0, 0x7f, 0x5f, 0x82, 0x7b,
+ 0x89, 0x3e, 0xbb, 0xc4, 0x0b, 0xb0, 0x17, 0xfc, 0x17, 0xdc, 0x45, 0x1f, 0x40, 0xc3, 0x1e, 0x4c,
+ 0xbc, 0x21, 0x66, 0x25, 0xa8, 0xf0, 0x52, 0x62, 0x6c, 0xb7, 0x25, 0x3d, 0x4a, 0x12, 0xd7, 0xb0,
+ 0x9e, 0xed, 0xa5, 0x1c, 0x5c, 0x13, 0xca, 0x23, 0x2b, 0xb0, 0x07, 0xd1, 0xf0, 0xc2, 0x26, 0xba,
+ 0x0f, 0xc0, 0x3f, 0xcd, 0xd8, 0xa1, 0x5b, 0xe5, 0x94, 0x3d, 0x2b, 0xb0, 0xd0, 0x43, 0xa8, 0x63,
+ 0xaf, 0x67, 0x92, 0xbe, 0xc9, 0x69, 0x12, 0xfb, 0x03, 0xec, 0xf5, 0x4e, 0xfb, 0xc7, 0x8c, 0xa2,
+ 0xff, 0xb9, 0x04, 0xb7, 0xcf, 0x28, 0x96, 0x08, 0x9a, 0x88, 0x4a, 0x66, 0xf9, 0x57, 0xfa, 0x37,
+ 0x10, 0x8d, 0xcf, 0x61, 0x39, 0x02, 0x2b, 0xde, 0xa6, 0x7e, 0x0c, 0x71, 0x8c, 0x48, 0xc1, 0x36,
+ 0xd4, 0x48, 0xf7, 0x17, 0xd8, 0x0e, 0xcc, 0x31, 0xbb, 0x59, 0xce, 0x27, 0xbb, 0x9e, 0x72, 0xd6,
+ 0x19, 0x21, 0xae, 0x01, 0x24, 0xfa, 0xd6, 0x11, 0x34, 0xd4, 0x48, 0x64, 0x64, 0xbf, 0x2f, 0xc1,
+ 0x92, 0x00, 0x06, 0xc3, 0x6a, 0xa6, 0x14, 0x55, 0x33, 0x2c, 0xfb, 0xf0, 0x2b, 0x80, 0x98, 0x48,
+ 0xfe, 0x8d, 0x7e, 0x08, 0xad, 0x28, 0xe9, 0x13, 0xea, 0xbc, 0xe1, 0x1b, 0xca, 0x1c, 0x60, 0xab,
+ 0x87, 0xa9, 0xcc, 0xa5, 0x6b, 0xe1, 0x21, 0x10, 0xf1, 0x0f, 0x39, 0x1b, 0xfd, 0x1f, 0xdc, 0x1a,
+ 0x39, 0xec, 0xe6, 0x6f, 0x52, 0xdc, 0x1f, 0x59, 0x63, 0xbf, 0xb9, 0xc0, 0xaf, 0xa3, 0x37, 0x05,
+ 0xd5, 0x10, 0x44, 0xfd, 0x37, 0x25, 0xb8, 0xcb, 0xbd, 0x3c, 0xbc, 0xb8, 0x38, 0x2b, 0x0e, 0xf8,
+ 0xbe, 0x97, 0x00, 0x7c, 0xd3, 0x98, 0x69, 0x08, 0x00, 0xc7, 0x10, 0xdd, 0xf9, 0x04, 0xa2, 0xab,
+ 0xb7, 0x60, 0x2d, 0xe5, 0x8f, 0x88, 0xdf, 0xd6, 0xdf, 0x5a, 0xfc, 0x21, 0x24, 0x84, 0xd4, 0xc5,
+ 0x4b, 0x11, 0xfa, 0x1a, 0x1a, 0xd3, 0xcf, 0x37, 0x68, 0x23, 0xed, 0x66, 0xe2, 0x9d, 0x48, 0x7b,
+ 0x98, 0x2f, 0x20, 0x27, 0x6b, 0xe9, 0xef, 0xbf, 0x7b, 0x3a, 0x57, 0x99, 0x43, 0x3f, 0x0f, 0x1f,
+ 0x5f, 0x62, 0x2f, 0x33, 0x28, 0xde, 0x3d, 0xf3, 0x11, 0x48, 0x7b, 0x34, 0x43, 0x22, 0x61, 0xa1,
+ 0x84, 0x5e, 0x00, 0xa8, 0x07, 0x17, 0xd4, 0x4a, 0x76, 0x8c, 0x3d, 0xf9, 0x68, 0x5a, 0x16, 0x6b,
+ 0x4a, 0xd9, 0x57, 0x70, 0x2b, 0xf9, 0x6a, 0x82, 0xee, 0x47, 0x27, 0x4e, 0xd6, 0xfb, 0x8d, 0xf6,
+ 0x20, 0x8f, 0x9d, 0x56, 0x9c, 0x7c, 0xce, 0x50, 0x8a, 0x33, 0xdf, 0x4c, 0x94, 0xe2, 0xec, 0x57,
+ 0x90, 0x48, 0xb1, 0x0d, 0x28, 0xfd, 0x18, 0x81, 0xa2, 0xf8, 0xe5, 0xbe, 0x8a, 0x68, 0xfa, 0x2c,
+ 0x91, 0x29, 0x23, 0x27, 0x50, 0x8b, 0xe1, 0xf2, 0x28, 0x8a, 0x64, 0xfa, 0x9d, 0x43, 0xbb, 0x97,
+ 0xc9, 0x9b, 0xd2, 0xf7, 0x35, 0x34, 0xa6, 0x6f, 0x5c, 0x6a, 0xd1, 0xe5, 0x40, 0xfd, 0x6a, 0xd1,
+ 0xe5, 0x82, 0xf7, 0xa1, 0xfa, 0x63, 0x00, 0x05, 0x61, 0xab, 0x25, 0x91, 0xc2, 0xd0, 0xd5, 0x92,
+ 0x48, 0x23, 0xde, 0xa1, 0xb2, 0xe7, 0xdc, 0xdb, 0x69, 0x60, 0x5a, 0x79, 0x9b, 0x83, 0x80, 0x2b,
+ 0x6f, 0xf3, 0x30, 0xed, 0xf8, 0x16, 0x49, 0xe1, 0xbd, 0x6a, 0x8b, 0xe4, 0xe1, 0xdb, 0x6a, 0x8b,
+ 0xe4, 0x82, 0xc5, 0x51, 0x3c, 0x7e, 0x00, 0x0b, 0xfb, 0xbe, 0x3d, 0x44, 0x2b, 0x51, 0x17, 0x05,
+ 0x15, 0x6b, 0xab, 0x49, 0xe2, 0x54, 0xd7, 0x0e, 0x54, 0x42, 0xe4, 0x14, 0xad, 0x85, 0x92, 0x53,
+ 0xf8, 0xaf, 0xd6, 0x4c, 0x33, 0xa6, 0xd4, 0x5c, 0xc0, 0xcd, 0x04, 0xf8, 0x89, 0xd6, 0x23, 0xab,
+ 0x19, 0xe8, 0xab, 0x76, 0x3f, 0x87, 0x3b, 0x15, 0xb9, 0x17, 0x00, 0x0a, 0x9a, 0x54, 0xf3, 0x9c,
+ 0x02, 0x4e, 0xd5, 0x3c, 0x67, 0x20, 0x99, 0xb1, 0x8d, 0x94, 0xc6, 0x18, 0xd5, 0x46, 0xca, 0x45,
+ 0x3b, 0xd5, 0x46, 0xca, 0x87, 0x28, 0x23, 0x8f, 0xb9, 0x91, 0x69, 0x6c, 0x30, 0x6e, 0x24, 0x07,
+ 0xa5, 0x8c, 0x1b, 0xc9, 0x83, 0x16, 0x23, 0x23, 0x34, 0xfd, 0x5c, 0x26, 0x91, 0x3d, 0xf4, 0x5e,
+ 0xde, 0x1e, 0x4a, 0x42, 0x8c, 0xda, 0xfb, 0xff, 0x52, 0x6e, 0x2a, 0x7a, 0xe7, 0x50, 0x8f, 0xe3,
+ 0x7b, 0xe8, 0x5e, 0x52, 0x41, 0x02, 0x8c, 0xd0, 0xd6, 0xb3, 0x99, 0xa9, 0x8d, 0xf7, 0x4b, 0xd0,
+ 0xf2, 0xc1, 0x06, 0xf4, 0xc1, 0x2c, 0x1f, 0x93, 0x06, 0x3f, 0x7c, 0x1b, 0xd1, 0xa4, 0xf9, 0xa7,
+ 0x3c, 0xeb, 0xc5, 0x00, 0x42, 0x95, 0xf5, 0xd2, 0xe0, 0xa4, 0xca, 0x7a, 0x19, 0x88, 0x62, 0x14,
+ 0xa3, 0x43, 0xa8, 0x46, 0xc0, 0x19, 0x6a, 0xe6, 0xc1, 0x7e, 0x5a, 0x2b, 0x83, 0x33, 0xa5, 0xe9,
+ 0x27, 0x50, 0x8f, 0xc3, 0x61, 0x2a, 0xda, 0x19, 0x18, 0x9c, 0x8a, 0x76, 0x26, 0x82, 0x16, 0x4f,
+ 0xf1, 0x0a, 0x68, 0x89, 0xa5, 0xf8, 0x14, 0x8e, 0x13, 0x4b, 0xf1, 0x69, 0x64, 0x26, 0x5a, 0x84,
+ 0x5d, 0xfe, 0x8e, 0x9a, 0xc4, 0x48, 0x50, 0xfc, 0x39, 0x33, 0x13, 0x8e, 0x51, 0x59, 0x2d, 0x17,
+ 0x60, 0x09, 0x2d, 0x3c, 0x2f, 0xb1, 0xcc, 0x99, 0x82, 0x3e, 0x94, 0x8d, 0x3c, 0x94, 0x45, 0xd9,
+ 0xc8, 0xc5, 0x4d, 0xa2, 0x51, 0xb4, 0xa1, 0x2c, 0xff, 0x72, 0x40, 0x77, 0xa3, 0x5e, 0x89, 0x9f,
+ 0x27, 0xb4, 0xb5, 0x14, 0x7d, 0x2a, 0xb2, 0x67, 0x50, 0x8b, 0xa1, 0x23, 0x28, 0x7e, 0xe6, 0x4c,
+ 0xa1, 0x1e, 0x2a, 0xb2, 0x19, 0x70, 0x4a, 0x6c, 0xdc, 0xbf, 0x2a, 0xc1, 0xfa, 0x2c, 0xc4, 0x02,
+ 0x7d, 0x34, 0x6b, 0xbd, 0x4f, 0x1b, 0xfd, 0xf8, 0xed, 0x84, 0xa7, 0x46, 0xf5, 0x53, 0xb8, 0x99,
+ 0xa8, 0xc1, 0x55, 0x46, 0xcf, 0x82, 0x48, 0x54, 0x46, 0xcf, 0x2c, 0xdc, 0x63, 0x63, 0x1b, 0xc2,
+ 0x6a, 0x56, 0xfd, 0x84, 0x1e, 0xab, 0x5d, 0x91, 0x5b, 0x03, 0x6a, 0x4f, 0x66, 0x0b, 0xa5, 0x8c,
+ 0x75, 0x61, 0x39, 0x55, 0x86, 0xaa, 0x05, 0x94, 0x57, 0x19, 0xab, 0x05, 0x94, 0x5b, 0xc3, 0xc6,
+ 0x6c, 0x60, 0x40, 0x69, 0xf4, 0x18, 0xc5, 0x2e, 0xb8, 0x39, 0xf0, 0xb5, 0x4a, 0xf9, 0x33, 0xc0,
+ 0x67, 0x95, 0xac, 0xba, 0xb0, 0x9c, 0x82, 0x8d, 0xd5, 0x50, 0xf2, 0x10, 0x6a, 0x35, 0x94, 0x5c,
+ 0xcc, 0x39, 0x36, 0x94, 0x0e, 0x54, 0xc2, 0xaa, 0x4c, 0x5d, 0x06, 0xa6, 0x2a, 0x4e, 0x75, 0x19,
+ 0x48, 0x15, 0x70, 0xe1, 0xd2, 0x79, 0x05, 0xb7, 0xa7, 0x6a, 0x14, 0xf4, 0x20, 0x71, 0x99, 0x49,
+ 0x15, 0x53, 0xda, 0x46, 0x2e, 0x3f, 0xa9, 0xbb, 0xfd, 0xfc, 0x15, 0x93, 0x74, 0xad, 0xee, 0xa6,
+ 0x4d, 0x46, 0xcf, 0xc4, 0xe7, 0x27, 0x84, 0x5e, 0x3e, 0x13, 0xfd, 0x3f, 0xe1, 0xbf, 0xc0, 0x3d,
+ 0xbb, 0x24, 0xb2, 0x3d, 0xee, 0x76, 0x97, 0x38, 0x69, 0xfb, 0x9f, 0x01, 0x00, 0x00, 0xff, 0xff,
+ 0xfe, 0xd6, 0x2f, 0x0b, 0x47, 0x27, 0x00, 0x00,
}
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/server.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/server.pb.go
index 6b4e020d7..4c482de6b 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/server.pb.go
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/server.pb.go
@@ -33,7 +33,7 @@ func (m *ServerInfoRequest) Reset() { *m = ServerInfoRequest{} }
func (m *ServerInfoRequest) String() string { return proto.CompactTextString(m) }
func (*ServerInfoRequest) ProtoMessage() {}
func (*ServerInfoRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_server_9187386691afdaaf, []int{0}
+ return fileDescriptor_server_636aea99a5d9572b, []int{0}
}
func (m *ServerInfoRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ServerInfoRequest.Unmarshal(m, b)
@@ -66,7 +66,7 @@ func (m *ServerInfoResponse) Reset() { *m = ServerInfoResponse{} }
func (m *ServerInfoResponse) String() string { return proto.CompactTextString(m) }
func (*ServerInfoResponse) ProtoMessage() {}
func (*ServerInfoResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_server_9187386691afdaaf, []int{1}
+ return fileDescriptor_server_636aea99a5d9572b, []int{1}
}
func (m *ServerInfoResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ServerInfoResponse.Unmarshal(m, b)
@@ -120,7 +120,7 @@ func (m *ServerInfoResponse_StorageStatus) Reset() { *m = ServerInfoResp
func (m *ServerInfoResponse_StorageStatus) String() string { return proto.CompactTextString(m) }
func (*ServerInfoResponse_StorageStatus) ProtoMessage() {}
func (*ServerInfoResponse_StorageStatus) Descriptor() ([]byte, []int) {
- return fileDescriptor_server_9187386691afdaaf, []int{1, 0}
+ return fileDescriptor_server_636aea99a5d9572b, []int{1, 0}
}
func (m *ServerInfoResponse_StorageStatus) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ServerInfoResponse_StorageStatus.Unmarshal(m, b)
@@ -239,27 +239,27 @@ var _ServerService_serviceDesc = grpc.ServiceDesc{
Metadata: "server.proto",
}
-func init() { proto.RegisterFile("server.proto", fileDescriptor_server_9187386691afdaaf) }
-
-var fileDescriptor_server_9187386691afdaaf = []byte{
- // 304 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x74, 0x91, 0xbf, 0x4e, 0xc3, 0x30,
- 0x10, 0xc6, 0x69, 0x2a, 0x55, 0xed, 0xb5, 0xe1, 0x8f, 0xa7, 0x12, 0x90, 0x28, 0x91, 0x90, 0xb2,
- 0x34, 0x41, 0x65, 0x63, 0x44, 0x62, 0x60, 0x61, 0x48, 0xa4, 0x0e, 0x2c, 0x95, 0xd3, 0x1e, 0xc6,
- 0x52, 0x12, 0x07, 0x9f, 0x5b, 0xc4, 0x93, 0x30, 0xf2, 0x8e, 0x3c, 0x01, 0xaa, 0x9d, 0xfe, 0x41,
- 0xc0, 0x12, 0xe5, 0x7e, 0xdf, 0x77, 0xbe, 0xef, 0x6c, 0x18, 0x10, 0xea, 0x15, 0xea, 0xb8, 0xd6,
- 0xca, 0x28, 0xd6, 0x11, 0xd2, 0xf0, 0xe2, 0x3d, 0x18, 0xd0, 0x0b, 0xd7, 0xb8, 0x70, 0x34, 0x3c,
- 0x83, 0x93, 0xcc, 0xba, 0x1e, 0xaa, 0x67, 0x95, 0xe2, 0xeb, 0x12, 0xc9, 0xdc, 0x76, 0xbe, 0x3e,
- 0x22, 0xaf, 0xeb, 0x85, 0x9f, 0x1e, 0xb0, 0x7d, 0x95, 0x6a, 0x55, 0x11, 0xb2, 0x2b, 0x38, 0x74,
- 0x27, 0xcf, 0x56, 0xa8, 0x49, 0xaa, 0x6a, 0xd8, 0x1a, 0xb5, 0xa2, 0x5e, 0xea, 0x3b, 0x3a, 0x75,
- 0x90, 0x5d, 0x40, 0x5f, 0x48, 0xb3, 0xf5, 0x78, 0xd6, 0x03, 0x42, 0x9a, 0x8d, 0x21, 0x83, 0x63,
- 0x32, 0x4a, 0x73, 0x81, 0x33, 0x32, 0xdc, 0x2c, 0x09, 0x69, 0xd8, 0x1e, 0xb5, 0xa3, 0xfe, 0x24,
- 0x8a, 0x5d, 0xd8, 0xf8, 0xf7, 0xf4, 0x38, 0x73, 0x2d, 0x99, 0xed, 0x48, 0x8f, 0x68, 0xbf, 0x44,
- 0x0a, 0x0a, 0xf0, 0x7f, 0x38, 0xd8, 0x25, 0x0c, 0x36, 0x53, 0x2a, 0x5e, 0x62, 0x93, 0xb5, 0xdf,
- 0xb0, 0x47, 0x5e, 0x22, 0x0b, 0xa0, 0xab, 0x91, 0x2f, 0x78, 0x5e, 0xa0, 0x8d, 0xd9, 0x4d, 0xb7,
- 0x35, 0x3b, 0x87, 0xde, 0x9b, 0x96, 0x06, 0xad, 0xd8, 0xb6, 0xe2, 0x0e, 0x4c, 0xa6, 0xe0, 0xbb,
- 0x88, 0xeb, 0xaf, 0x9c, 0x23, 0xbb, 0x07, 0xd8, 0x65, 0x66, 0xa7, 0x7f, 0xed, 0x61, 0xef, 0x38,
- 0x08, 0xfe, 0x5f, 0x31, 0x3c, 0xb8, 0xbb, 0x7e, 0x5a, 0xcb, 0x05, 0xcf, 0xe3, 0xb9, 0x2a, 0x13,
- 0xf7, 0x3b, 0x56, 0x5a, 0x24, 0xae, 0x69, 0x6c, 0x1f, 0x2f, 0x11, 0xaa, 0xa9, 0xeb, 0x3c, 0xef,
- 0x58, 0x74, 0xf3, 0x1d, 0x00, 0x00, 0xff, 0xff, 0xb6, 0xe3, 0x42, 0xe4, 0xf5, 0x01, 0x00, 0x00,
+func init() { proto.RegisterFile("server.proto", fileDescriptor_server_636aea99a5d9572b) }
+
+var fileDescriptor_server_636aea99a5d9572b = []byte{
+ // 301 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x74, 0x91, 0xcf, 0x4a, 0xc3, 0x40,
+ 0x10, 0xc6, 0x69, 0x0a, 0xa5, 0x9d, 0x26, 0xfe, 0x59, 0x2f, 0x35, 0x08, 0xd6, 0x80, 0x90, 0x4b,
+ 0x13, 0xa9, 0x6f, 0xe0, 0x4d, 0x04, 0x0f, 0x09, 0x78, 0x10, 0xa1, 0x6c, 0xda, 0x71, 0x5d, 0x48,
+ 0xb2, 0x71, 0x67, 0x5b, 0xf1, 0x49, 0x3c, 0xfa, 0x9e, 0x9e, 0xa4, 0xbb, 0xe9, 0x1f, 0x51, 0x2f,
+ 0x21, 0xf3, 0x9b, 0xef, 0xdb, 0xf9, 0x66, 0x17, 0x7c, 0x42, 0xbd, 0x42, 0x9d, 0x34, 0x5a, 0x19,
+ 0xc5, 0x7a, 0x42, 0x1a, 0x5e, 0xbe, 0x87, 0x3e, 0xbd, 0x70, 0x8d, 0x0b, 0x47, 0xa3, 0x13, 0x38,
+ 0xce, 0xad, 0xea, 0xb6, 0x7e, 0x56, 0x19, 0xbe, 0x2e, 0x91, 0x4c, 0xf4, 0xe9, 0x01, 0xdb, 0xa7,
+ 0xd4, 0xa8, 0x9a, 0x90, 0x5d, 0xc2, 0x81, 0x3b, 0x71, 0xb6, 0x42, 0x4d, 0x52, 0xd5, 0xa3, 0xce,
+ 0xb8, 0x13, 0x0f, 0xb2, 0xc0, 0xd1, 0x07, 0x07, 0xd9, 0x39, 0x0c, 0x85, 0x34, 0x5b, 0x8d, 0x67,
+ 0x35, 0x20, 0xa4, 0xd9, 0x08, 0x72, 0x38, 0x22, 0xa3, 0x34, 0x17, 0x38, 0x23, 0xc3, 0xcd, 0x92,
+ 0x90, 0x46, 0xdd, 0x71, 0x37, 0x1e, 0x4e, 0xe3, 0xc4, 0x85, 0x4c, 0x7e, 0x4f, 0x4f, 0x72, 0x67,
+ 0xc9, 0xad, 0x23, 0x3b, 0xa4, 0xfd, 0x12, 0x29, 0x2c, 0x21, 0xf8, 0xa1, 0x60, 0x17, 0xe0, 0x6f,
+ 0xa6, 0xd4, 0xbc, 0xc2, 0x36, 0xeb, 0xb0, 0x65, 0xf7, 0xbc, 0x42, 0x16, 0x42, 0x5f, 0x23, 0x5f,
+ 0xf0, 0xa2, 0x44, 0x1b, 0xb3, 0x9f, 0x6d, 0x6b, 0x76, 0x06, 0x83, 0x37, 0x2d, 0x0d, 0xda, 0x66,
+ 0xd7, 0x36, 0x77, 0x60, 0xfa, 0x04, 0x81, 0x8b, 0xb8, 0xfe, 0xca, 0x39, 0xb2, 0x3b, 0x80, 0x5d,
+ 0x66, 0x76, 0xfa, 0xd7, 0x1e, 0xf6, 0x6e, 0xc3, 0xf0, 0xff, 0x15, 0xa3, 0xde, 0xd7, 0x47, 0xec,
+ 0xf5, 0xbd, 0x9b, 0xab, 0xc7, 0xb5, 0xa8, 0xe4, 0x45, 0x32, 0x57, 0x55, 0xea, 0x7e, 0x27, 0x4a,
+ 0x8b, 0xd4, 0x59, 0x27, 0xf6, 0xe9, 0x52, 0xa1, 0xda, 0xba, 0x29, 0x8a, 0x9e, 0x45, 0xd7, 0xdf,
+ 0x01, 0x00, 0x00, 0xff, 0xff, 0x9b, 0xbd, 0xac, 0x8f, 0xf3, 0x01, 0x00, 0x00,
}
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/shared.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/shared.pb.go
index 0f5ac7eae..f7726474d 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/shared.pb.go
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/shared.pb.go
@@ -20,6 +20,38 @@ var _ = math.Inf
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
+type ObjectType int32
+
+const (
+ ObjectType_UNKNOWN ObjectType = 0
+ ObjectType_COMMIT ObjectType = 1
+ ObjectType_BLOB ObjectType = 2
+ ObjectType_TREE ObjectType = 3
+ ObjectType_TAG ObjectType = 4
+)
+
+var ObjectType_name = map[int32]string{
+ 0: "UNKNOWN",
+ 1: "COMMIT",
+ 2: "BLOB",
+ 3: "TREE",
+ 4: "TAG",
+}
+var ObjectType_value = map[string]int32{
+ "UNKNOWN": 0,
+ "COMMIT": 1,
+ "BLOB": 2,
+ "TREE": 3,
+ "TAG": 4,
+}
+
+func (x ObjectType) String() string {
+ return proto.EnumName(ObjectType_name, int32(x))
+}
+func (ObjectType) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_shared_667153471f9eb114, []int{0}
+}
+
type OperationMsg_Operation int32
const (
@@ -43,7 +75,7 @@ func (x OperationMsg_Operation) String() string {
return proto.EnumName(OperationMsg_Operation_name, int32(x))
}
func (OperationMsg_Operation) EnumDescriptor() ([]byte, []int) {
- return fileDescriptor_shared_c632aa5c49ccb806, []int{0, 0}
+ return fileDescriptor_shared_667153471f9eb114, []int{0, 0}
}
type OperationMsg struct {
@@ -57,7 +89,7 @@ func (m *OperationMsg) Reset() { *m = OperationMsg{} }
func (m *OperationMsg) String() string { return proto.CompactTextString(m) }
func (*OperationMsg) ProtoMessage() {}
func (*OperationMsg) Descriptor() ([]byte, []int) {
- return fileDescriptor_shared_c632aa5c49ccb806, []int{0}
+ return fileDescriptor_shared_667153471f9eb114, []int{0}
}
func (m *OperationMsg) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_OperationMsg.Unmarshal(m, b)
@@ -112,7 +144,7 @@ func (m *Repository) Reset() { *m = Repository{} }
func (m *Repository) String() string { return proto.CompactTextString(m) }
func (*Repository) ProtoMessage() {}
func (*Repository) Descriptor() ([]byte, []int) {
- return fileDescriptor_shared_c632aa5c49ccb806, []int{1}
+ return fileDescriptor_shared_667153471f9eb114, []int{1}
}
func (m *Repository) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Repository.Unmarshal(m, b)
@@ -195,7 +227,7 @@ func (m *GitCommit) Reset() { *m = GitCommit{} }
func (m *GitCommit) String() string { return proto.CompactTextString(m) }
func (*GitCommit) ProtoMessage() {}
func (*GitCommit) Descriptor() ([]byte, []int) {
- return fileDescriptor_shared_c632aa5c49ccb806, []int{2}
+ return fileDescriptor_shared_667153471f9eb114, []int{2}
}
func (m *GitCommit) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GitCommit.Unmarshal(m, b)
@@ -277,7 +309,7 @@ func (m *CommitAuthor) Reset() { *m = CommitAuthor{} }
func (m *CommitAuthor) String() string { return proto.CompactTextString(m) }
func (*CommitAuthor) ProtoMessage() {}
func (*CommitAuthor) Descriptor() ([]byte, []int) {
- return fileDescriptor_shared_c632aa5c49ccb806, []int{3}
+ return fileDescriptor_shared_667153471f9eb114, []int{3}
}
func (m *CommitAuthor) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommitAuthor.Unmarshal(m, b)
@@ -329,7 +361,7 @@ func (m *ExitStatus) Reset() { *m = ExitStatus{} }
func (m *ExitStatus) String() string { return proto.CompactTextString(m) }
func (*ExitStatus) ProtoMessage() {}
func (*ExitStatus) Descriptor() ([]byte, []int) {
- return fileDescriptor_shared_c632aa5c49ccb806, []int{4}
+ return fileDescriptor_shared_667153471f9eb114, []int{4}
}
func (m *ExitStatus) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ExitStatus.Unmarshal(m, b)
@@ -369,7 +401,7 @@ func (m *Branch) Reset() { *m = Branch{} }
func (m *Branch) String() string { return proto.CompactTextString(m) }
func (*Branch) ProtoMessage() {}
func (*Branch) Descriptor() ([]byte, []int) {
- return fileDescriptor_shared_c632aa5c49ccb806, []int{5}
+ return fileDescriptor_shared_667153471f9eb114, []int{5}
}
func (m *Branch) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Branch.Unmarshal(m, b)
@@ -422,7 +454,7 @@ func (m *Tag) Reset() { *m = Tag{} }
func (m *Tag) String() string { return proto.CompactTextString(m) }
func (*Tag) ProtoMessage() {}
func (*Tag) Descriptor() ([]byte, []int) {
- return fileDescriptor_shared_c632aa5c49ccb806, []int{6}
+ return fileDescriptor_shared_667153471f9eb114, []int{6}
}
func (m *Tag) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Tag.Unmarshal(m, b)
@@ -498,7 +530,7 @@ func (m *User) Reset() { *m = User{} }
func (m *User) String() string { return proto.CompactTextString(m) }
func (*User) ProtoMessage() {}
func (*User) Descriptor() ([]byte, []int) {
- return fileDescriptor_shared_c632aa5c49ccb806, []int{7}
+ return fileDescriptor_shared_667153471f9eb114, []int{7}
}
func (m *User) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_User.Unmarshal(m, b)
@@ -557,7 +589,7 @@ func (m *ObjectPool) Reset() { *m = ObjectPool{} }
func (m *ObjectPool) String() string { return proto.CompactTextString(m) }
func (*ObjectPool) ProtoMessage() {}
func (*ObjectPool) Descriptor() ([]byte, []int) {
- return fileDescriptor_shared_c632aa5c49ccb806, []int{8}
+ return fileDescriptor_shared_667153471f9eb114, []int{8}
}
func (m *ObjectPool) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ObjectPool.Unmarshal(m, b)
@@ -585,11 +617,11 @@ func (m *ObjectPool) GetRepository() *Repository {
}
var E_OpType = &proto.ExtensionDesc{
- ExtendedType: (*descriptor.MessageOptions)(nil),
+ ExtendedType: (*descriptor.MethodOptions)(nil),
ExtensionType: (*OperationMsg)(nil),
- Field: 82302,
+ Field: 82303,
Name: "gitaly.op_type",
- Tag: "bytes,82302,opt,name=op_type,json=opType",
+ Tag: "bytes,82303,opt,name=op_type,json=opType",
Filename: "shared.proto",
}
@@ -603,61 +635,64 @@ func init() {
proto.RegisterType((*Tag)(nil), "gitaly.Tag")
proto.RegisterType((*User)(nil), "gitaly.User")
proto.RegisterType((*ObjectPool)(nil), "gitaly.ObjectPool")
+ proto.RegisterEnum("gitaly.ObjectType", ObjectType_name, ObjectType_value)
proto.RegisterEnum("gitaly.OperationMsg_Operation", OperationMsg_Operation_name, OperationMsg_Operation_value)
proto.RegisterExtension(E_OpType)
}
-func init() { proto.RegisterFile("shared.proto", fileDescriptor_shared_c632aa5c49ccb806) }
-
-var fileDescriptor_shared_c632aa5c49ccb806 = []byte{
- // 771 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x54, 0xdd, 0x6e, 0x23, 0x35,
- 0x14, 0x66, 0x26, 0xbf, 0x73, 0x32, 0x5d, 0x82, 0xe9, 0xc5, 0xa8, 0x68, 0x69, 0x18, 0x24, 0xd4,
- 0x0b, 0x76, 0xb2, 0xca, 0x4a, 0x5c, 0x70, 0x45, 0xb7, 0xac, 0x56, 0xbb, 0xa8, 0x4d, 0xe5, 0xa6,
- 0x42, 0xe2, 0x66, 0xe4, 0x64, 0xbc, 0x8e, 0x91, 0x27, 0xb6, 0x6c, 0x67, 0x45, 0xf6, 0x92, 0x07,
- 0xe2, 0x49, 0x78, 0x0f, 0xde, 0x02, 0x21, 0xdb, 0x33, 0x69, 0x68, 0x0b, 0xda, 0x3b, 0x9f, 0xcf,
- 0x9f, 0xcf, 0xdf, 0x77, 0x8e, 0x21, 0x35, 0x6b, 0xa2, 0x69, 0x55, 0x28, 0x2d, 0xad, 0x44, 0x7d,
- 0xc6, 0x2d, 0x11, 0xbb, 0x93, 0x53, 0x26, 0x25, 0x13, 0x74, 0xea, 0xd1, 0xe5, 0xf6, 0xdd, 0xd4,
- 0xf2, 0x9a, 0x1a, 0x4b, 0x6a, 0x15, 0x88, 0x27, 0x93, 0xfb, 0x84, 0x8a, 0x9a, 0x95, 0xe6, 0xca,
- 0x4a, 0x1d, 0x18, 0xb9, 0x81, 0x74, 0xae, 0xa8, 0x26, 0x96, 0xcb, 0xcd, 0xa5, 0x61, 0xa8, 0x80,
- 0x58, 0xaa, 0x2c, 0x9a, 0x44, 0x67, 0x4f, 0x66, 0x5f, 0x16, 0x21, 0x4e, 0x71, 0xc8, 0xb8, 0x33,
- 0x70, 0x2c, 0x55, 0xfe, 0x02, 0x92, 0x3d, 0x80, 0x46, 0x30, 0xb8, 0xbd, 0xfa, 0xe9, 0x6a, 0xfe,
- 0xf3, 0xd5, 0xf8, 0x13, 0x67, 0x5c, 0xde, 0x2e, 0xce, 0x17, 0x73, 0x3c, 0x8e, 0x50, 0x0a, 0xc3,
- 0xf3, 0x8b, 0x8b, 0x57, 0x37, 0x37, 0x73, 0x3c, 0x8e, 0xf3, 0x3f, 0x62, 0x00, 0x4c, 0x95, 0x34,
- 0xdc, 0x4a, 0xbd, 0x43, 0x5f, 0x41, 0x6a, 0xac, 0xd4, 0x84, 0xd1, 0x72, 0x43, 0x6a, 0x9a, 0xc5,
- 0x93, 0xe8, 0x2c, 0xc1, 0xa3, 0x06, 0xbb, 0x22, 0x35, 0x45, 0x5f, 0xc3, 0x91, 0xa6, 0x82, 0x58,
- 0xfe, 0x9e, 0x96, 0x8a, 0xd8, 0x75, 0xd6, 0xf1, 0x9c, 0xb4, 0x05, 0xaf, 0x89, 0x5d, 0xa3, 0xe7,
- 0x70, 0xcc, 0xb8, 0x2d, 0xe5, 0xf2, 0x57, 0xba, 0xb2, 0x65, 0xc5, 0x35, 0x5d, 0x39, 0xff, 0x59,
- 0xd7, 0x73, 0x11, 0xe3, 0x76, 0xee, 0xaf, 0x7e, 0x6c, 0x6f, 0xd0, 0x6b, 0x98, 0xb8, 0x17, 0x44,
- 0x58, 0xaa, 0x37, 0xc4, 0xd2, 0xfb, 0x6f, 0x39, 0x35, 0x59, 0x6f, 0xd2, 0x39, 0x4b, 0xf0, 0x53,
- 0xc6, 0xed, 0x79, 0x4b, 0xfb, 0xb7, 0x1b, 0x4e, 0x8d, 0xcb, 0x8f, 0x89, 0x52, 0xef, 0x6b, 0xca,
- 0xfa, 0x21, 0x3f, 0x26, 0x0e, 0xea, 0xfc, 0x06, 0x3e, 0x65, 0xa2, 0x54, 0x5a, 0xfa, 0x18, 0xbe,
- 0x8c, 0xa1, 0xa7, 0x1d, 0x31, 0x71, 0x1d, 0x50, 0x57, 0xc7, 0xdb, 0xee, 0x30, 0x1a, 0xc7, 0x6f,
- 0xbb, 0xc3, 0xc1, 0x78, 0x88, 0xbb, 0x8e, 0x96, 0xff, 0x15, 0x41, 0xf2, 0x9a, 0xdb, 0x0b, 0x59,
- 0xd7, 0xdc, 0xa2, 0x27, 0x10, 0xf3, 0xca, 0x6b, 0x94, 0xe0, 0x98, 0x57, 0x28, 0x83, 0x81, 0xd9,
- 0xfa, 0x94, 0x7c, 0xeb, 0x52, 0xdc, 0x9a, 0x08, 0x41, 0x77, 0x29, 0xab, 0x9d, 0xef, 0x56, 0x8a,
- 0xfd, 0x19, 0x7d, 0x0b, 0x7d, 0xb2, 0xb5, 0x6b, 0xa9, 0x7d, 0x5f, 0x46, 0xb3, 0xe3, 0x56, 0xe5,
- 0xe0, 0xfd, 0xdc, 0xdf, 0xe1, 0x86, 0x83, 0x66, 0x90, 0xac, 0x3c, 0x6e, 0xa9, 0xce, 0x7a, 0xff,
- 0xf3, 0xe0, 0x8e, 0x86, 0x9e, 0x02, 0x28, 0xa2, 0xe9, 0xc6, 0x96, 0xbc, 0x32, 0x59, 0xdf, 0xf7,
- 0x2f, 0x09, 0xc8, 0x9b, 0xca, 0xa0, 0x2f, 0x20, 0x71, 0x89, 0x94, 0x86, 0x7f, 0xa0, 0xd9, 0x60,
- 0x12, 0x9d, 0x75, 0xf0, 0xd0, 0x01, 0x37, 0xfc, 0x03, 0xcd, 0xd7, 0x90, 0x1e, 0xba, 0x75, 0x15,
- 0xf8, 0x99, 0x88, 0x42, 0x05, 0xee, 0x8c, 0x8e, 0xa1, 0x47, 0x6b, 0xc2, 0x45, 0x53, 0x6d, 0x30,
- 0x50, 0x01, 0xdd, 0x8a, 0x58, 0xea, 0x6b, 0x1d, 0xcd, 0x4e, 0x8a, 0x30, 0xfa, 0x45, 0x3b, 0xfa,
- 0xc5, 0xa2, 0xdd, 0x0d, 0xec, 0x79, 0x79, 0x0e, 0xf0, 0xea, 0x37, 0x6e, 0x6f, 0x2c, 0xb1, 0x5b,
- 0xe3, 0x7c, 0xbe, 0x27, 0x62, 0x1b, 0x02, 0xf5, 0x70, 0x30, 0xf2, 0x05, 0xf4, 0x5f, 0x6a, 0xb2,
- 0x59, 0xad, 0x1f, 0xcd, 0xe3, 0x3b, 0x38, 0xb2, 0x44, 0x33, 0x6a, 0xcb, 0x50, 0xbb, 0xcf, 0x67,
- 0x34, 0xfb, 0xac, 0xed, 0xcf, 0x5e, 0x31, 0x9c, 0x06, 0x5e, 0xb0, 0xf2, 0x3f, 0x23, 0xe8, 0x2c,
- 0x08, 0x7b, 0xd4, 0x67, 0xd0, 0x36, 0xde, 0x6b, 0xfb, 0x20, 0x46, 0xe7, 0xa3, 0x62, 0xb8, 0x99,
- 0xa8, 0xa9, 0x31, 0x84, 0x51, 0x2f, 0x73, 0x8a, 0x5b, 0xd3, 0x6d, 0x5b, 0x73, 0x0c, 0x0a, 0xf4,
- 0xbc, 0x02, 0xa3, 0x06, 0x73, 0x22, 0xb8, 0x11, 0xb1, 0x84, 0x31, 0xaa, 0xfd, 0x18, 0xff, 0xe7,
- 0x88, 0x04, 0x4e, 0xfe, 0x0e, 0xba, 0xb7, 0x86, 0x6a, 0xf4, 0x39, 0xf4, 0x98, 0x28, 0xf7, 0x93,
- 0xd9, 0x65, 0xe2, 0x4d, 0xb5, 0xaf, 0x31, 0x7e, 0x4c, 0xbf, 0xce, 0xa1, 0x7e, 0xa7, 0x30, 0x62,
- 0xa2, 0xdc, 0x1a, 0xb7, 0x62, 0x35, 0x6d, 0x96, 0x16, 0x98, 0xb8, 0x6d, 0x90, 0xfc, 0x07, 0x80,
- 0xb0, 0x78, 0xd7, 0x52, 0x0a, 0x34, 0x03, 0x38, 0x58, 0xb7, 0xc8, 0xe7, 0x89, 0xda, 0x3c, 0xef,
- 0x96, 0x0e, 0x1f, 0xb0, 0xbe, 0xbf, 0x86, 0x81, 0x54, 0xa5, 0xdd, 0x29, 0x8a, 0x4e, 0x1f, 0xcc,
- 0xc7, 0x65, 0x68, 0xc0, 0x5c, 0xb9, 0xaf, 0xcc, 0x64, 0x7f, 0xff, 0x7e, 0x6f, 0xda, 0x0f, 0x3f,
- 0x41, 0xdc, 0x97, 0x6a, 0xb1, 0x53, 0xf4, 0xe5, 0xf3, 0x5f, 0xdc, 0xb5, 0x20, 0xcb, 0x62, 0x25,
- 0xeb, 0x69, 0x38, 0x3e, 0x93, 0x9a, 0x4d, 0xc3, 0xa3, 0x67, 0xde, 0xfb, 0x94, 0xc9, 0xc6, 0x56,
- 0xcb, 0x65, 0xdf, 0x43, 0x2f, 0xfe, 0x09, 0x00, 0x00, 0xff, 0xff, 0xab, 0xc2, 0xfc, 0x8c, 0xd2,
- 0x05, 0x00, 0x00,
+func init() { proto.RegisterFile("shared.proto", fileDescriptor_shared_667153471f9eb114) }
+
+var fileDescriptor_shared_667153471f9eb114 = []byte{
+ // 813 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x54, 0xdd, 0x6e, 0xdb, 0x36,
+ 0x14, 0x9e, 0x64, 0xf9, 0xef, 0x58, 0xe9, 0x34, 0x2e, 0x17, 0x42, 0x86, 0xb6, 0x9e, 0x06, 0x0c,
+ 0xc1, 0xb0, 0xca, 0x85, 0x0b, 0xec, 0x62, 0x57, 0xb3, 0xb3, 0x20, 0x48, 0x37, 0x47, 0x01, 0xa3,
+ 0x60, 0xc0, 0x6e, 0x04, 0xda, 0x62, 0x69, 0x0e, 0x92, 0x29, 0x90, 0x74, 0xb1, 0xf4, 0x72, 0x0f,
+ 0xb4, 0x27, 0xd9, 0x7b, 0xec, 0x31, 0x36, 0x90, 0xb4, 0x1c, 0x37, 0xcd, 0x86, 0xde, 0xf1, 0x7c,
+ 0xfc, 0x78, 0x78, 0x3e, 0x7e, 0xe7, 0x10, 0x42, 0xb5, 0x26, 0x92, 0x96, 0x69, 0x23, 0x85, 0x16,
+ 0xa8, 0xc7, 0xb8, 0x26, 0xd5, 0xdd, 0xc9, 0x73, 0x26, 0x04, 0xab, 0xe8, 0xc4, 0xa2, 0xcb, 0xed,
+ 0x9b, 0x89, 0xe6, 0x35, 0x55, 0x9a, 0xd4, 0x8d, 0x23, 0x9e, 0x8c, 0x1f, 0x12, 0x4a, 0xaa, 0x56,
+ 0x92, 0x37, 0x5a, 0x48, 0xc7, 0x48, 0x14, 0x84, 0x59, 0x43, 0x25, 0xd1, 0x5c, 0x6c, 0x16, 0x8a,
+ 0xa1, 0x14, 0x7c, 0xd1, 0xc4, 0xde, 0xd8, 0x3b, 0x7d, 0x32, 0x7d, 0x96, 0xba, 0x7b, 0xd2, 0x43,
+ 0xc6, 0x7d, 0x80, 0x7d, 0xd1, 0x24, 0xaf, 0x60, 0xb8, 0x07, 0xd0, 0x08, 0xfa, 0xb7, 0x57, 0x3f,
+ 0x5d, 0x65, 0xbf, 0x5c, 0x45, 0x9f, 0x98, 0x60, 0x71, 0x9b, 0xcf, 0xf2, 0x0c, 0x47, 0x1e, 0x0a,
+ 0x61, 0x30, 0x3b, 0x3b, 0x3b, 0xbf, 0xb9, 0xc9, 0x70, 0xe4, 0x27, 0x7f, 0xfa, 0x00, 0x98, 0x36,
+ 0x42, 0x71, 0x2d, 0xe4, 0x1d, 0xfa, 0x12, 0x42, 0xa5, 0x85, 0x24, 0x8c, 0x16, 0x1b, 0x52, 0xd3,
+ 0xd8, 0x1f, 0x7b, 0xa7, 0x43, 0x3c, 0xda, 0x61, 0x57, 0xa4, 0xa6, 0xe8, 0x2b, 0x38, 0x92, 0xb4,
+ 0x22, 0x9a, 0xbf, 0xa5, 0x45, 0x43, 0xf4, 0x3a, 0xee, 0x58, 0x4e, 0xd8, 0x82, 0xd7, 0x44, 0xaf,
+ 0xd1, 0x4b, 0x38, 0x66, 0x5c, 0x17, 0x62, 0xf9, 0x1b, 0x5d, 0xe9, 0xa2, 0xe4, 0x92, 0xae, 0x4c,
+ 0xfe, 0x38, 0xb0, 0x5c, 0xc4, 0xb8, 0xce, 0xec, 0xd6, 0x8f, 0xed, 0x0e, 0xba, 0x80, 0xb1, 0x39,
+ 0x41, 0x2a, 0x4d, 0xe5, 0x86, 0x68, 0xfa, 0xf0, 0x2c, 0xa7, 0x2a, 0xee, 0x8e, 0x3b, 0xa7, 0x43,
+ 0xfc, 0x94, 0x71, 0x3d, 0x6b, 0x69, 0xef, 0xa7, 0xe1, 0x54, 0x99, 0xfa, 0x58, 0x55, 0xc8, 0xbd,
+ 0xa6, 0xb8, 0xe7, 0xea, 0x63, 0xd5, 0x81, 0xce, 0xaf, 0xe1, 0x53, 0x56, 0x15, 0x8d, 0x14, 0xf6,
+ 0x0e, 0x2b, 0x63, 0x60, 0x69, 0x47, 0xac, 0xba, 0x76, 0xa8, 0xd1, 0xf1, 0x3a, 0x18, 0x78, 0x91,
+ 0xff, 0x3a, 0x18, 0xf4, 0xa3, 0x01, 0x0e, 0x0c, 0x2d, 0xf9, 0xdb, 0x83, 0xe1, 0x05, 0xd7, 0x67,
+ 0xa2, 0xae, 0xb9, 0x46, 0x4f, 0xc0, 0xe7, 0xa5, 0xf5, 0x68, 0x88, 0x7d, 0x5e, 0xa2, 0x18, 0xfa,
+ 0x6a, 0x6b, 0x4b, 0xb2, 0x4f, 0x17, 0xe2, 0x36, 0x44, 0x08, 0x82, 0xa5, 0x28, 0xef, 0xec, 0x6b,
+ 0x85, 0xd8, 0xae, 0xd1, 0xb7, 0xd0, 0x23, 0x5b, 0xbd, 0x16, 0xd2, 0xbe, 0xcb, 0x68, 0x7a, 0xdc,
+ 0xba, 0xec, 0xb2, 0xcf, 0xec, 0x1e, 0xde, 0x71, 0xd0, 0x14, 0x86, 0x2b, 0x8b, 0x6b, 0x2a, 0xe3,
+ 0xee, 0xff, 0x1c, 0xb8, 0xa7, 0xa1, 0xa7, 0x00, 0x0d, 0x91, 0x74, 0xa3, 0x0b, 0x5e, 0xaa, 0xb8,
+ 0x67, 0xdf, 0x6f, 0xe8, 0x90, 0xcb, 0x52, 0xa1, 0x2f, 0x60, 0x68, 0x0a, 0x29, 0x14, 0x7f, 0x47,
+ 0xe3, 0xfe, 0xd8, 0x3b, 0xed, 0xe0, 0x81, 0x01, 0x6e, 0xf8, 0x3b, 0x9a, 0xac, 0x21, 0x3c, 0x4c,
+ 0x6b, 0x14, 0xd8, 0x9e, 0xf0, 0x9c, 0x02, 0xb3, 0x46, 0xc7, 0xd0, 0xa5, 0x35, 0xe1, 0xd5, 0x4e,
+ 0xad, 0x0b, 0x50, 0x0a, 0x41, 0x49, 0x34, 0xb5, 0x5a, 0x47, 0xd3, 0x93, 0xd4, 0xb5, 0x7e, 0xda,
+ 0xb6, 0x7e, 0x9a, 0xb7, 0xb3, 0x81, 0x2d, 0x2f, 0x49, 0x00, 0xce, 0x7f, 0xe7, 0xfa, 0x46, 0x13,
+ 0xbd, 0x55, 0x26, 0xe7, 0x5b, 0x52, 0x6d, 0xdd, 0x45, 0x5d, 0xec, 0x82, 0x24, 0x87, 0xde, 0x5c,
+ 0x92, 0xcd, 0x6a, 0xfd, 0x68, 0x1d, 0xdf, 0xc1, 0x91, 0x26, 0x92, 0x51, 0x5d, 0x38, 0xed, 0xb6,
+ 0x9e, 0xd1, 0xf4, 0xb3, 0xf6, 0x7d, 0xf6, 0x8e, 0xe1, 0xd0, 0xf1, 0x5c, 0x94, 0xfc, 0xe5, 0x41,
+ 0x27, 0x27, 0xec, 0xd1, 0x9c, 0xce, 0x5b, 0x7f, 0xef, 0xed, 0x07, 0x77, 0x74, 0x3e, 0xea, 0x0e,
+ 0xd3, 0x13, 0x35, 0x55, 0x8a, 0x30, 0x6a, 0x6d, 0x0e, 0x71, 0x1b, 0x9a, 0x69, 0xdb, 0x2d, 0x9d,
+ 0x03, 0x5d, 0xeb, 0xc0, 0x68, 0x87, 0x19, 0x13, 0x4c, 0x8b, 0x68, 0xc2, 0x18, 0x95, 0xb6, 0x8d,
+ 0xff, 0xb3, 0x45, 0x1c, 0x27, 0x79, 0x03, 0xc1, 0xad, 0xa2, 0x12, 0x7d, 0x0e, 0x5d, 0x56, 0x15,
+ 0xfb, 0xce, 0x0c, 0x58, 0x75, 0x59, 0xee, 0x35, 0xfa, 0x8f, 0xf9, 0xd7, 0x39, 0xf4, 0xef, 0x39,
+ 0x8c, 0x58, 0x55, 0x6c, 0x95, 0x19, 0xb1, 0x9a, 0xee, 0x86, 0x16, 0x58, 0x75, 0xbb, 0x43, 0x92,
+ 0x1f, 0x00, 0xdc, 0xe0, 0x5d, 0x0b, 0x51, 0xa1, 0x29, 0xc0, 0xc1, 0xb8, 0x79, 0xb6, 0x4e, 0xd4,
+ 0xd6, 0x79, 0x3f, 0x74, 0xf8, 0x80, 0xf5, 0xcd, 0xbc, 0xcd, 0x90, 0xdf, 0x35, 0xf4, 0xfd, 0xdf,
+ 0x0a, 0xa0, 0x77, 0x96, 0x2d, 0x16, 0x97, 0x79, 0xe4, 0xa1, 0x01, 0x04, 0xf3, 0x9f, 0xb3, 0x79,
+ 0xe4, 0x9b, 0x55, 0x8e, 0xcf, 0xcf, 0xa3, 0x0e, 0xea, 0x43, 0x27, 0x9f, 0x5d, 0x44, 0xc1, 0xf7,
+ 0x19, 0xf4, 0x45, 0x53, 0x68, 0x93, 0xe0, 0xd9, 0x07, 0x3d, 0xb6, 0xa0, 0x7a, 0x2d, 0xca, 0xac,
+ 0x31, 0xbf, 0xa1, 0x8a, 0xff, 0xf9, 0xe3, 0xc1, 0xc0, 0x1c, 0xfe, 0xa3, 0xb8, 0x27, 0x1a, 0x53,
+ 0xc6, 0xfc, 0xe5, 0xaf, 0x66, 0xbb, 0x22, 0xcb, 0x74, 0x25, 0xea, 0x89, 0x5b, 0xbe, 0x10, 0x92,
+ 0x4d, 0xdc, 0xa1, 0x17, 0x36, 0xf9, 0x84, 0x89, 0x5d, 0xdc, 0x2c, 0x97, 0x3d, 0x0b, 0xbd, 0xfa,
+ 0x37, 0x00, 0x00, 0xff, 0xff, 0x87, 0xef, 0xe0, 0x3f, 0x15, 0x06, 0x00, 0x00,
}
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/smarthttp.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/smarthttp.pb.go
index 8f3d6ba4a..5938e9bcf 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/smarthttp.pb.go
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/smarthttp.pb.go
@@ -38,7 +38,7 @@ func (m *InfoRefsRequest) Reset() { *m = InfoRefsRequest{} }
func (m *InfoRefsRequest) String() string { return proto.CompactTextString(m) }
func (*InfoRefsRequest) ProtoMessage() {}
func (*InfoRefsRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_smarthttp_d15d08ac1e07ff5f, []int{0}
+ return fileDescriptor_smarthttp_5a09d229ac7e5b0b, []int{0}
}
func (m *InfoRefsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_InfoRefsRequest.Unmarshal(m, b)
@@ -90,7 +90,7 @@ func (m *InfoRefsResponse) Reset() { *m = InfoRefsResponse{} }
func (m *InfoRefsResponse) String() string { return proto.CompactTextString(m) }
func (*InfoRefsResponse) ProtoMessage() {}
func (*InfoRefsResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_smarthttp_d15d08ac1e07ff5f, []int{1}
+ return fileDescriptor_smarthttp_5a09d229ac7e5b0b, []int{1}
}
func (m *InfoRefsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_InfoRefsResponse.Unmarshal(m, b)
@@ -135,7 +135,7 @@ func (m *PostUploadPackRequest) Reset() { *m = PostUploadPackRequest{} }
func (m *PostUploadPackRequest) String() string { return proto.CompactTextString(m) }
func (*PostUploadPackRequest) ProtoMessage() {}
func (*PostUploadPackRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_smarthttp_d15d08ac1e07ff5f, []int{2}
+ return fileDescriptor_smarthttp_5a09d229ac7e5b0b, []int{2}
}
func (m *PostUploadPackRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PostUploadPackRequest.Unmarshal(m, b)
@@ -195,7 +195,7 @@ func (m *PostUploadPackResponse) Reset() { *m = PostUploadPackResponse{}
func (m *PostUploadPackResponse) String() string { return proto.CompactTextString(m) }
func (*PostUploadPackResponse) ProtoMessage() {}
func (*PostUploadPackResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_smarthttp_d15d08ac1e07ff5f, []int{3}
+ return fileDescriptor_smarthttp_5a09d229ac7e5b0b, []int{3}
}
func (m *PostUploadPackResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PostUploadPackResponse.Unmarshal(m, b)
@@ -245,7 +245,7 @@ func (m *PostReceivePackRequest) Reset() { *m = PostReceivePackRequest{}
func (m *PostReceivePackRequest) String() string { return proto.CompactTextString(m) }
func (*PostReceivePackRequest) ProtoMessage() {}
func (*PostReceivePackRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_smarthttp_d15d08ac1e07ff5f, []int{4}
+ return fileDescriptor_smarthttp_5a09d229ac7e5b0b, []int{4}
}
func (m *PostReceivePackRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PostReceivePackRequest.Unmarshal(m, b)
@@ -326,7 +326,7 @@ func (m *PostReceivePackResponse) Reset() { *m = PostReceivePackResponse
func (m *PostReceivePackResponse) String() string { return proto.CompactTextString(m) }
func (*PostReceivePackResponse) ProtoMessage() {}
func (*PostReceivePackResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_smarthttp_d15d08ac1e07ff5f, []int{5}
+ return fileDescriptor_smarthttp_5a09d229ac7e5b0b, []int{5}
}
func (m *PostReceivePackResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PostReceivePackResponse.Unmarshal(m, b)
@@ -659,38 +659,37 @@ var _SmartHTTPService_serviceDesc = grpc.ServiceDesc{
Metadata: "smarthttp.proto",
}
-func init() { proto.RegisterFile("smarthttp.proto", fileDescriptor_smarthttp_d15d08ac1e07ff5f) }
-
-var fileDescriptor_smarthttp_d15d08ac1e07ff5f = []byte{
- // 465 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x53, 0xcb, 0x6e, 0xd3, 0x40,
- 0x14, 0x65, 0x9c, 0x34, 0xd0, 0x9b, 0x40, 0xa2, 0x5b, 0x41, 0xad, 0x48, 0xd0, 0x60, 0x24, 0xe4,
- 0x45, 0xf3, 0x50, 0xd8, 0xb1, 0x84, 0x0d, 0x15, 0x48, 0x58, 0x6e, 0x23, 0x21, 0x36, 0xd6, 0xc4,
- 0x9e, 0x4c, 0x47, 0x4c, 0x3c, 0xc6, 0x33, 0xad, 0xd4, 0xff, 0x40, 0x62, 0xc7, 0x77, 0xf0, 0x35,
- 0x7c, 0x04, 0x5f, 0x80, 0xe2, 0x47, 0x9d, 0xc6, 0x35, 0x42, 0x20, 0x76, 0x33, 0xe7, 0x9e, 0xfb,
- 0x38, 0x67, 0xee, 0x40, 0x5f, 0xaf, 0x69, 0x6a, 0xce, 0x8d, 0x49, 0x26, 0x49, 0xaa, 0x8c, 0xc2,
- 0x0e, 0x17, 0x86, 0xca, 0xab, 0x61, 0x4f, 0x9f, 0xd3, 0x94, 0x45, 0x39, 0xea, 0x7c, 0x23, 0xd0,
- 0x3f, 0x89, 0x57, 0xca, 0x67, 0x2b, 0xed, 0xb3, 0xcf, 0x17, 0x4c, 0x1b, 0x9c, 0x03, 0xa4, 0x2c,
- 0x51, 0x5a, 0x18, 0x95, 0x5e, 0xd9, 0x64, 0x44, 0xdc, 0xee, 0x1c, 0x27, 0x79, 0xfa, 0xc4, 0xbf,
- 0x8e, 0xf8, 0x5b, 0x2c, 0x3c, 0x06, 0xe4, 0xc2, 0x04, 0xa1, 0x8a, 0x57, 0x82, 0x07, 0x2a, 0x31,
- 0x42, 0xc5, 0xda, 0xb6, 0x46, 0x2d, 0x77, 0xdf, 0x1f, 0x70, 0x61, 0x5e, 0x67, 0x81, 0xf7, 0x39,
- 0x8e, 0x4f, 0xa1, 0xb7, 0x61, 0x67, 0x23, 0x84, 0x4a, 0xda, 0xad, 0x11, 0x71, 0xf7, 0xfd, 0x2e,
- 0x17, 0xc6, 0x2b, 0xa0, 0x97, 0x9d, 0x9f, 0x5f, 0x5d, 0xeb, 0x9e, 0xe5, 0x3c, 0x87, 0x41, 0x35,
- 0x9f, 0x4e, 0x54, 0xac, 0x19, 0x22, 0xb4, 0x23, 0x6a, 0x68, 0x36, 0x5a, 0xcf, 0xcf, 0xce, 0xce,
- 0x77, 0x02, 0x0f, 0x3d, 0xa5, 0xcd, 0x22, 0x91, 0x8a, 0x46, 0x1e, 0x0d, 0x3f, 0xfd, 0x8b, 0x9c,
- 0xb2, 0x83, 0x55, 0x75, 0x68, 0x90, 0xd8, 0xfa, 0x43, 0x89, 0xed, 0x66, 0x89, 0xc7, 0xf0, 0x68,
- 0x77, 0xf2, 0xdf, 0x08, 0xfd, 0x62, 0xe5, 0x74, 0x9f, 0x85, 0x4c, 0x5c, 0xb2, 0xff, 0xa1, 0xf4,
- 0x00, 0xf6, 0xb8, 0x0c, 0x44, 0x54, 0xbc, 0x4b, 0x9b, 0xcb, 0x93, 0x08, 0x9f, 0xc1, 0x7d, 0x2e,
- 0x83, 0xad, 0xfa, 0xb9, 0xa2, 0x1e, 0x97, 0x55, 0x65, 0x3c, 0x82, 0x2e, 0x97, 0xc1, 0x85, 0x66,
- 0x69, 0x4c, 0xd7, 0xcc, 0xde, 0xcb, 0x28, 0xc0, 0xe5, 0xa2, 0x40, 0x6a, 0xb6, 0x74, 0x6a, 0xb6,
- 0x34, 0xf8, 0x7c, 0xf7, 0x76, 0x9f, 0x0b, 0x13, 0x89, 0x33, 0x86, 0xc3, 0x9a, 0x2b, 0xcd, 0x2e,
- 0xce, 0x7f, 0x58, 0x30, 0x38, 0xdd, 0xfc, 0x90, 0x37, 0x67, 0x67, 0xde, 0x29, 0x4b, 0x2f, 0x45,
- 0xc8, 0xf0, 0x2d, 0x60, 0xb9, 0x6b, 0xd5, 0x63, 0xe0, 0x61, 0xe9, 0xe0, 0xce, 0x3f, 0x19, 0xda,
- 0xf5, 0x40, 0xde, 0xd1, 0xb9, 0x33, 0x23, 0xf8, 0x0e, 0x0e, 0x2a, 0xfc, 0x7a, 0xa8, 0xbf, 0xad,
- 0xb6, 0x80, 0x07, 0x37, 0x77, 0x04, 0x1f, 0x97, 0xfc, 0x5b, 0xb7, 0x7e, 0xf8, 0xa4, 0x29, 0x5c,
- 0x16, 0x75, 0xc9, 0x8c, 0xe0, 0x07, 0xe8, 0xef, 0xb8, 0x86, 0x37, 0x12, 0xeb, 0x4b, 0x36, 0x3c,
- 0x6a, 0x8c, 0x6f, 0x57, 0x7e, 0x35, 0xfb, 0xb8, 0xe1, 0x49, 0xba, 0x9c, 0x84, 0x6a, 0x3d, 0xcd,
- 0x8f, 0x63, 0x95, 0xf2, 0x69, 0x9e, 0x3d, 0xce, 0x36, 0x60, 0xca, 0x55, 0x71, 0x4f, 0x96, 0xcb,
- 0x4e, 0x06, 0xbd, 0xf8, 0x15, 0x00, 0x00, 0xff, 0xff, 0x06, 0xb7, 0x75, 0xf3, 0xba, 0x04, 0x00,
- 0x00,
+func init() { proto.RegisterFile("smarthttp.proto", fileDescriptor_smarthttp_5a09d229ac7e5b0b) }
+
+var fileDescriptor_smarthttp_5a09d229ac7e5b0b = []byte{
+ // 462 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x53, 0x4d, 0x6f, 0xd3, 0x40,
+ 0x10, 0x95, 0x9d, 0x34, 0xd0, 0x49, 0x20, 0xd1, 0x54, 0x50, 0x2b, 0x12, 0x34, 0x18, 0x09, 0xf9,
+ 0xd0, 0x7c, 0x28, 0xfc, 0x03, 0xb8, 0xd0, 0x13, 0x61, 0xdb, 0x5e, 0x40, 0xc2, 0xda, 0xd8, 0x9b,
+ 0xed, 0x8a, 0x8d, 0xd7, 0x78, 0xb7, 0x95, 0xfa, 0x1f, 0x38, 0xc3, 0xdf, 0xe0, 0xd7, 0x71, 0xe0,
+ 0x84, 0xec, 0x4d, 0xea, 0x3a, 0xae, 0x11, 0x02, 0x71, 0xb3, 0xe7, 0xcd, 0xbe, 0x79, 0xef, 0xed,
+ 0x2c, 0xf4, 0xf5, 0x9a, 0x66, 0xe6, 0xc2, 0x98, 0x74, 0x92, 0x66, 0xca, 0x28, 0xec, 0x70, 0x61,
+ 0xa8, 0xbc, 0x1e, 0xf6, 0xf4, 0x05, 0xcd, 0x58, 0x6c, 0xab, 0xfe, 0x57, 0x07, 0xfa, 0x27, 0xc9,
+ 0x4a, 0x11, 0xb6, 0xd2, 0x84, 0x7d, 0xbe, 0x64, 0xda, 0xe0, 0x1c, 0x20, 0x63, 0xa9, 0xd2, 0xc2,
+ 0xa8, 0xec, 0xda, 0x73, 0x46, 0x4e, 0xd0, 0x9d, 0xe3, 0xc4, 0x1e, 0x9f, 0x90, 0x1b, 0x84, 0xdc,
+ 0xea, 0xc2, 0x63, 0x40, 0x2e, 0x4c, 0x18, 0xa9, 0x64, 0x25, 0x78, 0xa8, 0x52, 0x23, 0x54, 0xa2,
+ 0x3d, 0x77, 0xd4, 0x0a, 0xf6, 0xc9, 0x80, 0x0b, 0xf3, 0xba, 0x00, 0xde, 0xda, 0x3a, 0x3e, 0x83,
+ 0x5e, 0xde, 0x5d, 0x48, 0x88, 0x94, 0xf4, 0x5a, 0x23, 0x27, 0xd8, 0x27, 0x5d, 0x2e, 0xcc, 0x62,
+ 0x53, 0xf2, 0x5f, 0xc0, 0xa0, 0xd4, 0xa5, 0x53, 0x95, 0x68, 0x86, 0x08, 0xed, 0x98, 0x1a, 0x5a,
+ 0x48, 0xea, 0x91, 0xe2, 0xdb, 0xff, 0xee, 0xc0, 0xa3, 0x85, 0xd2, 0xe6, 0x3c, 0x95, 0x8a, 0xc6,
+ 0x0b, 0x1a, 0x7d, 0xfa, 0x17, 0x1b, 0xdb, 0x09, 0x6e, 0x39, 0xa1, 0xc1, 0x5a, 0xeb, 0x0f, 0xad,
+ 0xb5, 0xeb, 0xd6, 0x8e, 0xe1, 0xf1, 0xae, 0xe2, 0xdf, 0x18, 0xfc, 0xe2, 0xda, 0x76, 0xc2, 0x22,
+ 0x26, 0xae, 0xd8, 0xff, 0x70, 0x78, 0x00, 0x7b, 0x5c, 0x86, 0x22, 0xde, 0xdc, 0x43, 0x9b, 0xcb,
+ 0x93, 0x18, 0x9f, 0xc3, 0x03, 0x2e, 0xc3, 0x5b, 0xfc, 0xd6, 0x49, 0x8f, 0xcb, 0x92, 0x19, 0x8f,
+ 0xa0, 0xcb, 0x65, 0x78, 0xa9, 0x59, 0x96, 0xd0, 0x35, 0xf3, 0xf6, 0x8a, 0x16, 0xe0, 0xf2, 0x7c,
+ 0x53, 0xa9, 0xc5, 0xd1, 0xa9, 0xc5, 0xd1, 0x90, 0xef, 0xbd, 0xbb, 0xf3, 0xf5, 0xc7, 0x70, 0x58,
+ 0x4b, 0xa3, 0x39, 0xbd, 0xf9, 0x0f, 0x17, 0x06, 0xa7, 0xf9, 0x4b, 0x78, 0x73, 0x76, 0xb6, 0x38,
+ 0x65, 0xd9, 0x95, 0x88, 0x18, 0xbe, 0x03, 0xdc, 0xee, 0x56, 0x79, 0x09, 0x78, 0xb8, 0x4d, 0x6e,
+ 0xe7, 0x3d, 0x0c, 0xbd, 0x3a, 0x60, 0x27, 0xfa, 0x9d, 0x9f, 0xdf, 0x02, 0xf7, 0xbe, 0x3b, 0x73,
+ 0x90, 0xc0, 0x41, 0x89, 0xde, 0x48, 0xfb, 0x7b, 0x4e, 0x67, 0xe6, 0xe0, 0x07, 0x78, 0x58, 0xdd,
+ 0x13, 0x7c, 0xb2, 0x3d, 0x75, 0xe7, 0xc6, 0x0f, 0x9f, 0x36, 0xc1, 0x55, 0xb9, 0x41, 0x4e, 0xfe,
+ 0x11, 0xfa, 0x3b, 0x39, 0x62, 0xe5, 0x78, 0x7d, 0xdd, 0x86, 0x47, 0x8d, 0x78, 0x55, 0x7a, 0xce,
+ 0xff, 0x6a, 0xf6, 0x3e, 0xef, 0x96, 0x74, 0x39, 0x89, 0xd4, 0x7a, 0x6a, 0x3f, 0xc7, 0x2a, 0xe3,
+ 0x53, 0xcb, 0x31, 0x2e, 0x36, 0x62, 0xca, 0xd5, 0xe6, 0x3f, 0x5d, 0x2e, 0x3b, 0x45, 0xe9, 0xe5,
+ 0xaf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xb9, 0x7a, 0xac, 0xb4, 0xba, 0x04, 0x00, 0x00,
}
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/ssh.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/ssh.pb.go
index 5243e0db8..4c9bfdacf 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/ssh.pb.go
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/ssh.pb.go
@@ -41,7 +41,7 @@ func (m *SSHUploadPackRequest) Reset() { *m = SSHUploadPackRequest{} }
func (m *SSHUploadPackRequest) String() string { return proto.CompactTextString(m) }
func (*SSHUploadPackRequest) ProtoMessage() {}
func (*SSHUploadPackRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ssh_e79ebe9ec5e2177f, []int{0}
+ return fileDescriptor_ssh_7bc71c1984deb95b, []int{0}
}
func (m *SSHUploadPackRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SSHUploadPackRequest.Unmarshal(m, b)
@@ -106,7 +106,7 @@ func (m *SSHUploadPackResponse) Reset() { *m = SSHUploadPackResponse{} }
func (m *SSHUploadPackResponse) String() string { return proto.CompactTextString(m) }
func (*SSHUploadPackResponse) ProtoMessage() {}
func (*SSHUploadPackResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ssh_e79ebe9ec5e2177f, []int{1}
+ return fileDescriptor_ssh_7bc71c1984deb95b, []int{1}
}
func (m *SSHUploadPackResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SSHUploadPackResponse.Unmarshal(m, b)
@@ -170,7 +170,7 @@ func (m *SSHReceivePackRequest) Reset() { *m = SSHReceivePackRequest{} }
func (m *SSHReceivePackRequest) String() string { return proto.CompactTextString(m) }
func (*SSHReceivePackRequest) ProtoMessage() {}
func (*SSHReceivePackRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ssh_e79ebe9ec5e2177f, []int{2}
+ return fileDescriptor_ssh_7bc71c1984deb95b, []int{2}
}
func (m *SSHReceivePackRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SSHReceivePackRequest.Unmarshal(m, b)
@@ -256,7 +256,7 @@ func (m *SSHReceivePackResponse) Reset() { *m = SSHReceivePackResponse{}
func (m *SSHReceivePackResponse) String() string { return proto.CompactTextString(m) }
func (*SSHReceivePackResponse) ProtoMessage() {}
func (*SSHReceivePackResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ssh_e79ebe9ec5e2177f, []int{3}
+ return fileDescriptor_ssh_7bc71c1984deb95b, []int{3}
}
func (m *SSHReceivePackResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SSHReceivePackResponse.Unmarshal(m, b)
@@ -311,7 +311,7 @@ func (m *SSHUploadArchiveRequest) Reset() { *m = SSHUploadArchiveRequest
func (m *SSHUploadArchiveRequest) String() string { return proto.CompactTextString(m) }
func (*SSHUploadArchiveRequest) ProtoMessage() {}
func (*SSHUploadArchiveRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_ssh_e79ebe9ec5e2177f, []int{4}
+ return fileDescriptor_ssh_7bc71c1984deb95b, []int{4}
}
func (m *SSHUploadArchiveRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SSHUploadArchiveRequest.Unmarshal(m, b)
@@ -361,7 +361,7 @@ func (m *SSHUploadArchiveResponse) Reset() { *m = SSHUploadArchiveRespon
func (m *SSHUploadArchiveResponse) String() string { return proto.CompactTextString(m) }
func (*SSHUploadArchiveResponse) ProtoMessage() {}
func (*SSHUploadArchiveResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_ssh_e79ebe9ec5e2177f, []int{5}
+ return fileDescriptor_ssh_7bc71c1984deb95b, []int{5}
}
func (m *SSHUploadArchiveResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SSHUploadArchiveResponse.Unmarshal(m, b)
@@ -651,39 +651,39 @@ var _SSHService_serviceDesc = grpc.ServiceDesc{
Metadata: "ssh.proto",
}
-func init() { proto.RegisterFile("ssh.proto", fileDescriptor_ssh_e79ebe9ec5e2177f) }
-
-var fileDescriptor_ssh_e79ebe9ec5e2177f = []byte{
- // 494 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x54, 0x4d, 0x6e, 0xd3, 0x40,
- 0x14, 0xc6, 0x8e, 0x63, 0x9a, 0x17, 0x17, 0x45, 0x43, 0x5b, 0xac, 0x08, 0xa8, 0x31, 0x1b, 0x2f,
- 0x68, 0x52, 0xa5, 0x3b, 0x76, 0x80, 0x90, 0x0a, 0x1b, 0xaa, 0xb1, 0xb2, 0x81, 0x85, 0xe5, 0xd8,
- 0xc3, 0x64, 0xd4, 0x89, 0xc7, 0xcc, 0x4c, 0xa2, 0x56, 0x02, 0x71, 0x09, 0x10, 0x37, 0xe3, 0x20,
- 0x9c, 0x00, 0xd5, 0x36, 0xc1, 0x8e, 0x9b, 0x1d, 0x64, 0x37, 0xef, 0xfb, 0xde, 0xff, 0xf7, 0x6c,
- 0xe8, 0x29, 0x35, 0x1f, 0xe5, 0x52, 0x68, 0x81, 0x6c, 0xca, 0x74, 0xcc, 0xaf, 0x87, 0x8e, 0x9a,
- 0xc7, 0x92, 0xa4, 0x25, 0xea, 0xff, 0x34, 0xe0, 0x20, 0x0c, 0xcf, 0xa7, 0x39, 0x17, 0x71, 0x7a,
- 0x11, 0x27, 0x97, 0x98, 0x7c, 0x5a, 0x12, 0xa5, 0xd1, 0x04, 0x40, 0x92, 0x5c, 0x28, 0xa6, 0x85,
- 0xbc, 0x76, 0x0d, 0xcf, 0x08, 0xfa, 0x13, 0x34, 0x2a, 0x73, 0x8c, 0xf0, 0x9a, 0xc1, 0x35, 0x2f,
- 0x74, 0x00, 0x5d, 0xa5, 0x53, 0x96, 0xb9, 0xa6, 0x67, 0x04, 0x0e, 0x2e, 0x0d, 0xf4, 0x0c, 0x10,
- 0x65, 0x3a, 0x4a, 0x44, 0xf6, 0x91, 0xd1, 0x48, 0xe4, 0x9a, 0x89, 0x4c, 0xb9, 0x96, 0xd7, 0x09,
- 0x7a, 0x78, 0x40, 0x99, 0x7e, 0x55, 0x10, 0xef, 0x4a, 0x1c, 0x3d, 0x01, 0xe7, 0xc6, 0xbb, 0xe8,
- 0x2e, 0x11, 0xdc, 0xed, 0x7a, 0x46, 0xd0, 0xc3, 0x7d, 0xca, 0xf4, 0x45, 0x05, 0x3d, 0xb7, 0x7f,
- 0xfd, 0x08, 0xcc, 0x3d, 0xf3, 0xad, 0xb5, 0xd7, 0x19, 0x58, 0xf8, 0xb0, 0x96, 0x3c, 0x8f, 0x65,
- 0xbc, 0x20, 0x9a, 0x48, 0xe5, 0x7f, 0x86, 0xc3, 0x8d, 0xb9, 0x54, 0x2e, 0x32, 0x45, 0xd0, 0x11,
- 0xd8, 0x4a, 0xa7, 0x62, 0xa9, 0x8b, 0xa1, 0x1c, 0x5c, 0x59, 0x15, 0x4e, 0xa4, 0xac, 0xba, 0xaf,
- 0x2c, 0x74, 0x06, 0x7d, 0x72, 0xc5, 0x74, 0xa4, 0x74, 0xac, 0x97, 0xca, 0xed, 0x34, 0x37, 0xf1,
- 0xfa, 0x8a, 0xe9, 0xb0, 0x60, 0x30, 0x90, 0xf5, 0xdb, 0xff, 0x6e, 0x16, 0xe5, 0x31, 0x49, 0x08,
- 0x5b, 0x91, 0xff, 0xb3, 0xd7, 0xfb, 0xd0, 0xa5, 0x3c, 0x62, 0x69, 0xd1, 0x52, 0x0f, 0x5b, 0x94,
- 0xbf, 0x49, 0xd1, 0x53, 0xd8, 0xa7, 0x3c, 0xaa, 0x55, 0xb0, 0x0a, 0xd2, 0xa1, 0xfc, 0x6f, 0x6e,
- 0x74, 0x0c, 0x7d, 0xca, 0xa3, 0xa5, 0x22, 0x32, 0x8b, 0x17, 0xa4, 0x5a, 0x31, 0x50, 0x3e, 0xad,
- 0x90, 0x96, 0x08, 0x76, 0x4b, 0x84, 0x2d, 0xaa, 0xde, 0xbd, 0x5d, 0xd5, 0x4a, 0x32, 0xc3, 0xff,
- 0x02, 0x47, 0x9b, 0x6b, 0xd9, 0xa5, 0x2c, 0x97, 0xf0, 0x60, 0x7d, 0x14, 0x2f, 0x64, 0x32, 0x67,
- 0x2b, 0xf2, 0xcf, 0x75, 0x59, 0xcf, 0xfa, 0x15, 0xdc, 0x76, 0xb1, 0x1d, 0x4e, 0x3b, 0xf9, 0x66,
- 0x02, 0x84, 0xe1, 0x79, 0x48, 0xe4, 0x8a, 0x25, 0x04, 0x61, 0xd8, 0x6f, 0x7c, 0x11, 0xe8, 0xe1,
- 0x9f, 0xf8, 0xdb, 0x7e, 0x00, 0xc3, 0x47, 0x5b, 0xd8, 0x72, 0x02, 0xff, 0x4e, 0x60, 0x9c, 0x1a,
- 0x68, 0x0a, 0xf7, 0x9a, 0x7a, 0xa2, 0x7a, 0x58, 0xfb, 0xfc, 0x87, 0x8f, 0xb7, 0xd1, 0x8d, 0xb4,
- 0x1f, 0x60, 0xb0, 0xb9, 0x3a, 0x74, 0xdc, 0xea, 0xa7, 0xa9, 0xe0, 0xd0, 0xdb, 0xee, 0x50, 0x4f,
- 0xfe, 0xf2, 0xf4, 0xfd, 0x8d, 0x23, 0x8f, 0x67, 0xa3, 0x44, 0x2c, 0xc6, 0xe5, 0xf3, 0x44, 0x48,
- 0x3a, 0x2e, 0xc3, 0x4f, 0x8a, 0xab, 0x1f, 0x53, 0x51, 0xd9, 0xf9, 0x6c, 0x66, 0x17, 0xd0, 0xd9,
- 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, 0x78, 0x96, 0xf9, 0x08, 0x4e, 0x05, 0x00, 0x00,
+func init() { proto.RegisterFile("ssh.proto", fileDescriptor_ssh_7bc71c1984deb95b) }
+
+var fileDescriptor_ssh_7bc71c1984deb95b = []byte{
+ // 492 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x53, 0xd1, 0x6e, 0xd3, 0x30,
+ 0x14, 0x55, 0xba, 0x34, 0xac, 0xb7, 0x19, 0xaa, 0xcc, 0x36, 0xa2, 0x0a, 0x58, 0x08, 0x2f, 0x79,
+ 0x60, 0xed, 0xd4, 0x7d, 0x01, 0x20, 0xa4, 0xc1, 0x0b, 0x93, 0xa3, 0x49, 0x08, 0x1e, 0x22, 0x37,
+ 0x31, 0xae, 0x85, 0x1b, 0x07, 0xdb, 0xad, 0x36, 0x09, 0xc4, 0x17, 0xf0, 0xcc, 0x1f, 0xf0, 0x39,
+ 0x7c, 0x10, 0x4f, 0x68, 0x4e, 0x28, 0x4d, 0xb3, 0xbe, 0xc1, 0xde, 0x7c, 0xef, 0xb9, 0x3e, 0xf7,
+ 0xde, 0x73, 0x6c, 0xe8, 0x69, 0x3d, 0x1b, 0x95, 0x4a, 0x1a, 0x89, 0x3c, 0xc6, 0x0d, 0x11, 0x57,
+ 0x43, 0x5f, 0xcf, 0x88, 0xa2, 0x79, 0x95, 0x8d, 0x7e, 0x3a, 0xb0, 0x9f, 0x24, 0x67, 0x17, 0xa5,
+ 0x90, 0x24, 0x3f, 0x27, 0xd9, 0x47, 0x4c, 0x3f, 0x2d, 0xa8, 0x36, 0x68, 0x02, 0xa0, 0x68, 0x29,
+ 0x35, 0x37, 0x52, 0x5d, 0x05, 0x4e, 0xe8, 0xc4, 0xfd, 0x09, 0x1a, 0x55, 0x1c, 0x23, 0xbc, 0x42,
+ 0xf0, 0x5a, 0x15, 0xda, 0x87, 0xae, 0x36, 0x39, 0x2f, 0x82, 0x4e, 0xe8, 0xc4, 0x3e, 0xae, 0x02,
+ 0xf4, 0x14, 0x10, 0xe3, 0x26, 0xcd, 0x64, 0xf1, 0x81, 0xb3, 0x54, 0x96, 0x86, 0xcb, 0x42, 0x07,
+ 0x6e, 0xb8, 0x13, 0xf7, 0xf0, 0x80, 0x71, 0xf3, 0xc2, 0x02, 0x6f, 0xaa, 0x3c, 0x7a, 0x0c, 0xfe,
+ 0x75, 0xb5, 0x9d, 0x2e, 0x93, 0x22, 0xe8, 0x86, 0x4e, 0xdc, 0xc3, 0x7d, 0xc6, 0xcd, 0x79, 0x9d,
+ 0x7a, 0xed, 0xee, 0xee, 0x0c, 0x5c, 0x7c, 0xb0, 0x46, 0x5a, 0x12, 0x45, 0xe6, 0xd4, 0x50, 0xa5,
+ 0xa3, 0xcf, 0x70, 0xb0, 0xb1, 0x8f, 0x2e, 0x65, 0xa1, 0x29, 0x3a, 0x04, 0x4f, 0x9b, 0x5c, 0x2e,
+ 0x8c, 0x5d, 0xc6, 0xc7, 0x75, 0x54, 0xe7, 0xa9, 0x52, 0xf5, 0xd4, 0x75, 0x84, 0x4e, 0xa1, 0x4f,
+ 0x2f, 0xb9, 0x49, 0xb5, 0x21, 0x66, 0xa1, 0x83, 0x9d, 0xa6, 0x02, 0x2f, 0x2f, 0xb9, 0x49, 0x2c,
+ 0x82, 0x81, 0xae, 0xce, 0xd1, 0xb7, 0x8e, 0x6d, 0x8f, 0x69, 0x46, 0xf9, 0x92, 0xfe, 0x1f, 0x3d,
+ 0xef, 0x41, 0x97, 0x89, 0x94, 0xe7, 0x76, 0xa4, 0x1e, 0x76, 0x99, 0x78, 0x95, 0xa3, 0x27, 0xb0,
+ 0xc7, 0x44, 0xba, 0xd6, 0xc1, 0xb5, 0xa0, 0xcf, 0xc4, 0x5f, 0x6e, 0x74, 0x04, 0x7d, 0x26, 0xd2,
+ 0x85, 0xa6, 0xaa, 0x20, 0x73, 0x5a, 0x4b, 0x0b, 0x4c, 0x5c, 0xd4, 0x99, 0x96, 0xf8, 0x5e, 0x4b,
+ 0xfc, 0x2d, 0x6e, 0xde, 0xb9, 0xd9, 0xcd, 0xe8, 0x0b, 0x1c, 0x6e, 0xca, 0x71, 0x9b, 0x76, 0x64,
+ 0x70, 0x7f, 0xf5, 0x18, 0x9e, 0xa9, 0x6c, 0xc6, 0x97, 0xf4, 0x9f, 0xfb, 0x11, 0x7d, 0x85, 0xa0,
+ 0xdd, 0xe4, 0x16, 0xb7, 0x9c, 0xfc, 0xe8, 0x00, 0x24, 0xc9, 0x59, 0x42, 0xd5, 0x92, 0x67, 0x14,
+ 0xbd, 0x85, 0xbd, 0xc6, 0x0f, 0x40, 0x0f, 0xfe, 0xdc, 0xbf, 0xe9, 0xa3, 0x0f, 0x1f, 0x6e, 0x41,
+ 0xab, 0x0d, 0x22, 0xef, 0xd7, 0xf7, 0xb8, 0xb3, 0xdb, 0x89, 0x9d, 0x13, 0x07, 0xbd, 0x87, 0xbb,
+ 0x4d, 0x37, 0xd1, 0xfa, 0xe5, 0xf6, 0xa3, 0x1f, 0x3e, 0xda, 0x06, 0x37, 0xc8, 0x1d, 0x4b, 0x4e,
+ 0x60, 0xb0, 0x29, 0x23, 0x3a, 0x6a, 0xcd, 0xd6, 0x74, 0x71, 0x18, 0x6e, 0x2f, 0x68, 0xb7, 0x78,
+ 0x7e, 0xf2, 0xee, 0xba, 0x5c, 0x90, 0xe9, 0x28, 0x93, 0xf3, 0x71, 0x75, 0x3c, 0x96, 0x8a, 0x8d,
+ 0x2b, 0x92, 0x63, 0xfb, 0xee, 0xc7, 0x4c, 0xd6, 0x71, 0x39, 0x9d, 0x7a, 0x36, 0x75, 0xfa, 0x3b,
+ 0x00, 0x00, 0xff, 0xff, 0x39, 0xfb, 0x3b, 0x88, 0x48, 0x05, 0x00, 0x00,
}
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/storage.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/storage.pb.go
index ff115a64b..3e58fb842 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/storage.pb.go
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/storage.pb.go
@@ -35,7 +35,7 @@ func (m *ListDirectoriesRequest) Reset() { *m = ListDirectoriesRequest{}
func (m *ListDirectoriesRequest) String() string { return proto.CompactTextString(m) }
func (*ListDirectoriesRequest) ProtoMessage() {}
func (*ListDirectoriesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_storage_7d59321d1c916edc, []int{0}
+ return fileDescriptor_storage_71656ad921f7d066, []int{0}
}
func (m *ListDirectoriesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListDirectoriesRequest.Unmarshal(m, b)
@@ -80,7 +80,7 @@ func (m *ListDirectoriesResponse) Reset() { *m = ListDirectoriesResponse
func (m *ListDirectoriesResponse) String() string { return proto.CompactTextString(m) }
func (*ListDirectoriesResponse) ProtoMessage() {}
func (*ListDirectoriesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_storage_7d59321d1c916edc, []int{1}
+ return fileDescriptor_storage_71656ad921f7d066, []int{1}
}
func (m *ListDirectoriesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListDirectoriesResponse.Unmarshal(m, b)
@@ -118,7 +118,7 @@ func (m *DeleteAllRepositoriesRequest) Reset() { *m = DeleteAllRepositor
func (m *DeleteAllRepositoriesRequest) String() string { return proto.CompactTextString(m) }
func (*DeleteAllRepositoriesRequest) ProtoMessage() {}
func (*DeleteAllRepositoriesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_storage_7d59321d1c916edc, []int{2}
+ return fileDescriptor_storage_71656ad921f7d066, []int{2}
}
func (m *DeleteAllRepositoriesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteAllRepositoriesRequest.Unmarshal(m, b)
@@ -155,7 +155,7 @@ func (m *DeleteAllRepositoriesResponse) Reset() { *m = DeleteAllReposito
func (m *DeleteAllRepositoriesResponse) String() string { return proto.CompactTextString(m) }
func (*DeleteAllRepositoriesResponse) ProtoMessage() {}
func (*DeleteAllRepositoriesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_storage_7d59321d1c916edc, []int{3}
+ return fileDescriptor_storage_71656ad921f7d066, []int{3}
}
func (m *DeleteAllRepositoriesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteAllRepositoriesResponse.Unmarshal(m, b)
@@ -315,27 +315,26 @@ var _StorageService_serviceDesc = grpc.ServiceDesc{
Metadata: "storage.proto",
}
-func init() { proto.RegisterFile("storage.proto", fileDescriptor_storage_7d59321d1c916edc) }
-
-var fileDescriptor_storage_7d59321d1c916edc = []byte{
- // 289 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0xe2, 0x2d, 0x2e, 0xc9, 0x2f,
- 0x4a, 0x4c, 0x4f, 0xd5, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0x62, 0x4b, 0xcf, 0x2c, 0x49, 0xcc,
- 0xa9, 0x94, 0xe2, 0x29, 0xce, 0x48, 0x2c, 0x4a, 0x4d, 0x81, 0x88, 0x2a, 0x45, 0x72, 0x89, 0xf9,
- 0x64, 0x16, 0x97, 0xb8, 0x64, 0x16, 0xa5, 0x26, 0x97, 0xe4, 0x17, 0x65, 0xa6, 0x16, 0x07, 0xa5,
- 0x16, 0x96, 0xa6, 0x16, 0x97, 0x08, 0x29, 0x72, 0xf1, 0x40, 0x0d, 0x88, 0xcf, 0x4b, 0xcc, 0x4d,
- 0x95, 0x60, 0x54, 0x60, 0xd4, 0xe0, 0x0c, 0xe2, 0x86, 0x8a, 0xf9, 0x25, 0xe6, 0xa6, 0x0a, 0x89,
- 0x70, 0xb1, 0xa6, 0xa4, 0x16, 0x94, 0x64, 0x48, 0x30, 0x29, 0x30, 0x6a, 0xf0, 0x06, 0x41, 0x38,
- 0x56, 0x6c, 0x9f, 0xa6, 0x6b, 0x30, 0x71, 0x30, 0x2a, 0xe9, 0x73, 0x89, 0x63, 0x18, 0x5d, 0x5c,
- 0x90, 0x9f, 0x57, 0x0c, 0xd6, 0x58, 0x90, 0x58, 0x92, 0x51, 0x2c, 0xc1, 0xa8, 0xc0, 0xac, 0xc1,
- 0x19, 0x04, 0xe1, 0x28, 0x79, 0x72, 0xc9, 0xb8, 0xa4, 0xe6, 0xa4, 0x96, 0xa4, 0x3a, 0xe6, 0xe4,
- 0x04, 0xa5, 0x16, 0xe4, 0x17, 0x67, 0x92, 0xea, 0x22, 0xb8, 0xdd, 0xf2, 0x5c, 0xb2, 0x38, 0x8c,
- 0x82, 0xb8, 0xc0, 0xe8, 0x02, 0x23, 0x17, 0x5f, 0x30, 0x44, 0x63, 0x70, 0x6a, 0x51, 0x59, 0x66,
- 0x72, 0xaa, 0x50, 0x18, 0x17, 0x3f, 0x9a, 0x7b, 0x85, 0xe4, 0xf4, 0x20, 0x81, 0xa6, 0x87, 0x3d,
- 0x8c, 0xa4, 0xe4, 0x71, 0xca, 0x43, 0xac, 0x51, 0x62, 0x30, 0x60, 0x14, 0x4a, 0xe3, 0x12, 0xc5,
- 0xea, 0x16, 0x21, 0x15, 0x98, 0x6e, 0x7c, 0xbe, 0x96, 0x52, 0x25, 0xa0, 0x0a, 0x66, 0x93, 0x93,
- 0x41, 0x14, 0x48, 0x65, 0x4e, 0x62, 0x92, 0x5e, 0x72, 0x7e, 0xae, 0x3e, 0x84, 0xa9, 0x9b, 0x5f,
- 0x94, 0xae, 0x0f, 0xd1, 0xaf, 0x0b, 0x8e, 0x70, 0xfd, 0xf4, 0x7c, 0x28, 0xbf, 0x20, 0x29, 0x89,
- 0x0d, 0x2c, 0x64, 0x0c, 0x08, 0x00, 0x00, 0xff, 0xff, 0x41, 0xb1, 0x4d, 0x55, 0x2a, 0x02, 0x00,
- 0x00,
+func init() { proto.RegisterFile("storage.proto", fileDescriptor_storage_71656ad921f7d066) }
+
+var fileDescriptor_storage_71656ad921f7d066 = []byte{
+ // 285 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x91, 0x5f, 0x4b, 0xf3, 0x30,
+ 0x14, 0xc6, 0xc9, 0x5e, 0xde, 0xe2, 0x8e, 0x9b, 0x42, 0xf0, 0x4f, 0x29, 0xea, 0x6a, 0x51, 0xe8,
+ 0xcd, 0xda, 0xa1, 0x9f, 0x60, 0xb2, 0x4b, 0x11, 0xcc, 0xee, 0x44, 0x90, 0xb4, 0x3b, 0xb4, 0x81,
+ 0x74, 0x89, 0x49, 0x14, 0xfc, 0x24, 0x7e, 0x39, 0x3f, 0x89, 0x57, 0x62, 0x53, 0x2f, 0xd4, 0x4d,
+ 0xf1, 0x2e, 0xe7, 0xc9, 0x39, 0xbf, 0xe7, 0xc9, 0x09, 0x0c, 0xad, 0x53, 0x86, 0x57, 0x98, 0x69,
+ 0xa3, 0x9c, 0xa2, 0x41, 0x25, 0x1c, 0x97, 0x4f, 0xd1, 0xc0, 0xd6, 0xdc, 0xe0, 0xc2, 0xab, 0xc9,
+ 0x35, 0xec, 0x5d, 0x0a, 0xeb, 0x66, 0xc2, 0x60, 0xe9, 0x94, 0x11, 0x68, 0x19, 0xde, 0x3f, 0xa0,
+ 0x75, 0xf4, 0x18, 0x06, 0x1d, 0xe0, 0x6e, 0xc9, 0x1b, 0x0c, 0x49, 0x4c, 0xd2, 0x3e, 0xdb, 0xec,
+ 0xb4, 0x2b, 0xde, 0x20, 0xdd, 0x81, 0xff, 0x0b, 0xd4, 0xae, 0x0e, 0x7b, 0x31, 0x49, 0x87, 0xcc,
+ 0x17, 0x49, 0x0e, 0xfb, 0xdf, 0x90, 0x56, 0xab, 0xa5, 0x6d, 0x07, 0x34, 0x77, 0xb5, 0x0d, 0x49,
+ 0xfc, 0x2f, 0xed, 0x33, 0x5f, 0x24, 0x53, 0x38, 0x98, 0xa1, 0x44, 0x87, 0x53, 0x29, 0x19, 0x6a,
+ 0x65, 0xc5, 0x5f, 0x93, 0x24, 0x23, 0x38, 0x5c, 0x83, 0xf0, 0xce, 0x67, 0x2f, 0x04, 0xb6, 0xe6,
+ 0x7e, 0x60, 0x8e, 0xe6, 0x51, 0x94, 0x48, 0x6f, 0x61, 0xfb, 0x4b, 0x4e, 0x7a, 0x94, 0xf9, 0x25,
+ 0x65, 0xab, 0x77, 0x12, 0x8d, 0xd6, 0xde, 0x7b, 0x9b, 0x24, 0x78, 0x7d, 0x4e, 0x7b, 0x1b, 0x64,
+ 0x42, 0xa8, 0x84, 0xdd, 0x95, 0x89, 0xe8, 0xc9, 0x07, 0xe3, 0xa7, 0x37, 0x47, 0xa7, 0xbf, 0x74,
+ 0x7d, 0xf6, 0xbb, 0x98, 0xdc, 0xbc, 0xf7, 0x4b, 0x5e, 0x64, 0xa5, 0x6a, 0x72, 0x7f, 0x1c, 0x2b,
+ 0x53, 0xe5, 0x9e, 0x32, 0x6e, 0x3f, 0x3b, 0xaf, 0x54, 0x57, 0xeb, 0xa2, 0x08, 0x5a, 0xe9, 0xfc,
+ 0x2d, 0x00, 0x00, 0xff, 0xff, 0xb7, 0xc3, 0x8d, 0x13, 0x26, 0x02, 0x00, 0x00,
}
diff --git a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/wiki.pb.go b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/wiki.pb.go
index 521fbb66e..56571536a 100644
--- a/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/wiki.pb.go
+++ b/vendor/gitlab.com/gitlab-org/gitaly-proto/go/gitalypb/wiki.pb.go
@@ -43,7 +43,7 @@ func (x WikiGetAllPagesRequest_SortBy) String() string {
return proto.EnumName(WikiGetAllPagesRequest_SortBy_name, int32(x))
}
func (WikiGetAllPagesRequest_SortBy) EnumDescriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{15, 0}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{15, 0}
}
type WikiListPagesRequest_SortBy int32
@@ -66,7 +66,7 @@ func (x WikiListPagesRequest_SortBy) String() string {
return proto.EnumName(WikiListPagesRequest_SortBy_name, int32(x))
}
func (WikiListPagesRequest_SortBy) EnumDescriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{19, 0}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{19, 0}
}
type WikiCommitDetails struct {
@@ -84,7 +84,7 @@ func (m *WikiCommitDetails) Reset() { *m = WikiCommitDetails{} }
func (m *WikiCommitDetails) String() string { return proto.CompactTextString(m) }
func (*WikiCommitDetails) ProtoMessage() {}
func (*WikiCommitDetails) Descriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{0}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{0}
}
func (m *WikiCommitDetails) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WikiCommitDetails.Unmarshal(m, b)
@@ -151,7 +151,7 @@ func (m *WikiPageVersion) Reset() { *m = WikiPageVersion{} }
func (m *WikiPageVersion) String() string { return proto.CompactTextString(m) }
func (*WikiPageVersion) ProtoMessage() {}
func (*WikiPageVersion) Descriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{1}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{1}
}
func (m *WikiPageVersion) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WikiPageVersion.Unmarshal(m, b)
@@ -205,7 +205,7 @@ func (m *WikiPage) Reset() { *m = WikiPage{} }
func (m *WikiPage) String() string { return proto.CompactTextString(m) }
func (*WikiPage) ProtoMessage() {}
func (*WikiPage) Descriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{2}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{2}
}
func (m *WikiPage) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WikiPage.Unmarshal(m, b)
@@ -295,7 +295,7 @@ func (m *WikiGetPageVersionsRequest) Reset() { *m = WikiGetPageVersionsR
func (m *WikiGetPageVersionsRequest) String() string { return proto.CompactTextString(m) }
func (*WikiGetPageVersionsRequest) ProtoMessage() {}
func (*WikiGetPageVersionsRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{3}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{3}
}
func (m *WikiGetPageVersionsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WikiGetPageVersionsRequest.Unmarshal(m, b)
@@ -354,7 +354,7 @@ func (m *WikiGetPageVersionsResponse) Reset() { *m = WikiGetPageVersions
func (m *WikiGetPageVersionsResponse) String() string { return proto.CompactTextString(m) }
func (*WikiGetPageVersionsResponse) ProtoMessage() {}
func (*WikiGetPageVersionsResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{4}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{4}
}
func (m *WikiGetPageVersionsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WikiGetPageVersionsResponse.Unmarshal(m, b)
@@ -399,7 +399,7 @@ func (m *WikiWritePageRequest) Reset() { *m = WikiWritePageRequest{} }
func (m *WikiWritePageRequest) String() string { return proto.CompactTextString(m) }
func (*WikiWritePageRequest) ProtoMessage() {}
func (*WikiWritePageRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{5}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{5}
}
func (m *WikiWritePageRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WikiWritePageRequest.Unmarshal(m, b)
@@ -465,7 +465,7 @@ func (m *WikiWritePageResponse) Reset() { *m = WikiWritePageResponse{} }
func (m *WikiWritePageResponse) String() string { return proto.CompactTextString(m) }
func (*WikiWritePageResponse) ProtoMessage() {}
func (*WikiWritePageResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{6}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{6}
}
func (m *WikiWritePageResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WikiWritePageResponse.Unmarshal(m, b)
@@ -510,7 +510,7 @@ func (m *WikiUpdatePageRequest) Reset() { *m = WikiUpdatePageRequest{} }
func (m *WikiUpdatePageRequest) String() string { return proto.CompactTextString(m) }
func (*WikiUpdatePageRequest) ProtoMessage() {}
func (*WikiUpdatePageRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{7}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{7}
}
func (m *WikiUpdatePageRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WikiUpdatePageRequest.Unmarshal(m, b)
@@ -583,7 +583,7 @@ func (m *WikiUpdatePageResponse) Reset() { *m = WikiUpdatePageResponse{}
func (m *WikiUpdatePageResponse) String() string { return proto.CompactTextString(m) }
func (*WikiUpdatePageResponse) ProtoMessage() {}
func (*WikiUpdatePageResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{8}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{8}
}
func (m *WikiUpdatePageResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WikiUpdatePageResponse.Unmarshal(m, b)
@@ -623,7 +623,7 @@ func (m *WikiDeletePageRequest) Reset() { *m = WikiDeletePageRequest{} }
func (m *WikiDeletePageRequest) String() string { return proto.CompactTextString(m) }
func (*WikiDeletePageRequest) ProtoMessage() {}
func (*WikiDeletePageRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{9}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{9}
}
func (m *WikiDeletePageRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WikiDeletePageRequest.Unmarshal(m, b)
@@ -674,7 +674,7 @@ func (m *WikiDeletePageResponse) Reset() { *m = WikiDeletePageResponse{}
func (m *WikiDeletePageResponse) String() string { return proto.CompactTextString(m) }
func (*WikiDeletePageResponse) ProtoMessage() {}
func (*WikiDeletePageResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{10}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{10}
}
func (m *WikiDeletePageResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WikiDeletePageResponse.Unmarshal(m, b)
@@ -708,7 +708,7 @@ func (m *WikiFindPageRequest) Reset() { *m = WikiFindPageRequest{} }
func (m *WikiFindPageRequest) String() string { return proto.CompactTextString(m) }
func (*WikiFindPageRequest) ProtoMessage() {}
func (*WikiFindPageRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{11}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{11}
}
func (m *WikiFindPageRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WikiFindPageRequest.Unmarshal(m, b)
@@ -769,7 +769,7 @@ func (m *WikiFindPageResponse) Reset() { *m = WikiFindPageResponse{} }
func (m *WikiFindPageResponse) String() string { return proto.CompactTextString(m) }
func (*WikiFindPageResponse) ProtoMessage() {}
func (*WikiFindPageResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{12}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{12}
}
func (m *WikiFindPageResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WikiFindPageResponse.Unmarshal(m, b)
@@ -810,7 +810,7 @@ func (m *WikiFindFileRequest) Reset() { *m = WikiFindFileRequest{} }
func (m *WikiFindFileRequest) String() string { return proto.CompactTextString(m) }
func (*WikiFindFileRequest) ProtoMessage() {}
func (*WikiFindFileRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{13}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{13}
}
func (m *WikiFindFileRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WikiFindFileRequest.Unmarshal(m, b)
@@ -866,7 +866,7 @@ func (m *WikiFindFileResponse) Reset() { *m = WikiFindFileResponse{} }
func (m *WikiFindFileResponse) String() string { return proto.CompactTextString(m) }
func (*WikiFindFileResponse) ProtoMessage() {}
func (*WikiFindFileResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{14}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{14}
}
func (m *WikiFindFileResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WikiFindFileResponse.Unmarshal(m, b)
@@ -929,7 +929,7 @@ func (m *WikiGetAllPagesRequest) Reset() { *m = WikiGetAllPagesRequest{}
func (m *WikiGetAllPagesRequest) String() string { return proto.CompactTextString(m) }
func (*WikiGetAllPagesRequest) ProtoMessage() {}
func (*WikiGetAllPagesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{15}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{15}
}
func (m *WikiGetAllPagesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WikiGetAllPagesRequest.Unmarshal(m, b)
@@ -991,7 +991,7 @@ func (m *WikiGetAllPagesResponse) Reset() { *m = WikiGetAllPagesResponse
func (m *WikiGetAllPagesResponse) String() string { return proto.CompactTextString(m) }
func (*WikiGetAllPagesResponse) ProtoMessage() {}
func (*WikiGetAllPagesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{16}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{16}
}
func (m *WikiGetAllPagesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WikiGetAllPagesResponse.Unmarshal(m, b)
@@ -1039,7 +1039,7 @@ func (m *WikiGetFormattedDataRequest) Reset() { *m = WikiGetFormattedDat
func (m *WikiGetFormattedDataRequest) String() string { return proto.CompactTextString(m) }
func (*WikiGetFormattedDataRequest) ProtoMessage() {}
func (*WikiGetFormattedDataRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{17}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{17}
}
func (m *WikiGetFormattedDataRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WikiGetFormattedDataRequest.Unmarshal(m, b)
@@ -1098,7 +1098,7 @@ func (m *WikiGetFormattedDataResponse) Reset() { *m = WikiGetFormattedDa
func (m *WikiGetFormattedDataResponse) String() string { return proto.CompactTextString(m) }
func (*WikiGetFormattedDataResponse) ProtoMessage() {}
func (*WikiGetFormattedDataResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{18}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{18}
}
func (m *WikiGetFormattedDataResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WikiGetFormattedDataResponse.Unmarshal(m, b)
@@ -1141,7 +1141,7 @@ func (m *WikiListPagesRequest) Reset() { *m = WikiListPagesRequest{} }
func (m *WikiListPagesRequest) String() string { return proto.CompactTextString(m) }
func (*WikiListPagesRequest) ProtoMessage() {}
func (*WikiListPagesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{19}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{19}
}
func (m *WikiListPagesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WikiListPagesRequest.Unmarshal(m, b)
@@ -1208,7 +1208,7 @@ func (m *WikiListPagesResponse) Reset() { *m = WikiListPagesResponse{} }
func (m *WikiListPagesResponse) String() string { return proto.CompactTextString(m) }
func (*WikiListPagesResponse) ProtoMessage() {}
func (*WikiListPagesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_wiki_f7e7c472b29d6a0c, []int{20}
+ return fileDescriptor_wiki_b7336222204a13c2, []int{20}
}
func (m *WikiListPagesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WikiListPagesResponse.Unmarshal(m, b)
@@ -1830,79 +1830,78 @@ var _WikiService_serviceDesc = grpc.ServiceDesc{
Metadata: "wiki.proto",
}
-func init() { proto.RegisterFile("wiki.proto", fileDescriptor_wiki_f7e7c472b29d6a0c) }
-
-var fileDescriptor_wiki_f7e7c472b29d6a0c = []byte{
- // 1126 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x57, 0xcd, 0x6f, 0xdc, 0x44,
- 0x14, 0x8f, 0x37, 0xfb, 0xe1, 0x7d, 0x49, 0xb6, 0xe9, 0x50, 0x1a, 0x77, 0x13, 0x42, 0xe4, 0xb4,
- 0x22, 0x1c, 0xba, 0x29, 0xdb, 0x03, 0x02, 0x81, 0xd4, 0xb4, 0xf9, 0x50, 0xa5, 0x02, 0xc1, 0x59,
- 0x5a, 0x89, 0x8b, 0x35, 0xb1, 0x27, 0x9b, 0x51, 0xed, 0xb5, 0x19, 0x4f, 0x12, 0xe5, 0xc8, 0x81,
- 0x23, 0x67, 0x24, 0x6e, 0x48, 0x5c, 0xb8, 0xf2, 0xe7, 0xf0, 0x1f, 0x70, 0x84, 0x23, 0x27, 0x34,
- 0x1f, 0x6b, 0x8f, 0xbd, 0x9b, 0x45, 0x21, 0x20, 0xb8, 0xf9, 0xbd, 0x99, 0x79, 0xf3, 0x7e, 0xbf,
- 0xf7, 0x35, 0x06, 0xb8, 0xa0, 0xaf, 0x69, 0x2f, 0x65, 0x09, 0x4f, 0x50, 0x73, 0x48, 0x39, 0x8e,
- 0x2e, 0xbb, 0x8b, 0xd9, 0x29, 0x66, 0x24, 0x54, 0x5a, 0xf7, 0x5b, 0x0b, 0x6e, 0xbf, 0xa2, 0xaf,
- 0xe9, 0xb3, 0x24, 0x8e, 0x29, 0xdf, 0x25, 0x1c, 0xd3, 0x28, 0x43, 0x08, 0xea, 0x23, 0x1c, 0x13,
- 0xc7, 0xda, 0xb0, 0xb6, 0x16, 0x3d, 0xf9, 0x8d, 0xee, 0x40, 0x83, 0xc4, 0x98, 0x46, 0x4e, 0x4d,
- 0x2a, 0x95, 0x80, 0x1c, 0x68, 0xc5, 0x24, 0xcb, 0xf0, 0x90, 0x38, 0xf3, 0x52, 0x3f, 0x16, 0xd1,
- 0x0a, 0xb4, 0xce, 0x32, 0xc2, 0x7c, 0x1a, 0x3a, 0xf5, 0x0d, 0x6b, 0xab, 0xe1, 0x35, 0x85, 0xf8,
- 0x3c, 0x44, 0xab, 0xd0, 0x96, 0x0b, 0xf2, 0x86, 0x86, 0x3c, 0x64, 0x0b, 0xc5, 0xa7, 0x38, 0x26,
- 0xee, 0x00, 0x6e, 0x09, 0x77, 0x0e, 0xf1, 0x90, 0xbc, 0x24, 0x2c, 0xa3, 0xc9, 0x08, 0xbd, 0x0b,
- 0xcd, 0x40, 0x7a, 0x27, 0xdd, 0x59, 0xe8, 0xdf, 0xee, 0x29, 0x24, 0xbd, 0x03, 0xca, 0x95, 0xdb,
- 0x9e, 0xde, 0x80, 0xee, 0x42, 0xf3, 0x24, 0x61, 0x31, 0xe6, 0xd2, 0xc9, 0xb6, 0xa7, 0x25, 0xf7,
- 0x57, 0x0b, 0xec, 0xb1, 0x59, 0xf4, 0x1e, 0xb4, 0xce, 0x95, 0x69, 0x6d, 0x70, 0x65, 0x6c, 0xb0,
- 0x72, 0xb3, 0x37, 0xde, 0x77, 0x95, 0x5d, 0xc1, 0x09, 0xa7, 0x3c, 0x1a, 0x63, 0x57, 0x02, 0xba,
- 0x07, 0xf6, 0x19, 0x8b, 0xfc, 0x14, 0xf3, 0x53, 0x09, 0xbd, 0xed, 0xb5, 0xce, 0x58, 0x74, 0x88,
- 0xf9, 0xa9, 0x20, 0x56, 0xaa, 0x15, 0x6c, 0xf9, 0x9d, 0x93, 0xdd, 0x34, 0xc8, 0x5e, 0x07, 0x38,
- 0xa5, 0x19, 0x4f, 0x18, 0x0d, 0x70, 0xe4, 0xb4, 0x36, 0xac, 0x2d, 0xdb, 0x33, 0x34, 0xe2, 0x0a,
- 0x86, 0x2f, 0xfc, 0x10, 0x73, 0xec, 0xd8, 0x8a, 0x77, 0x86, 0x2f, 0x76, 0x31, 0xc7, 0xee, 0x8f,
- 0x16, 0x74, 0x05, 0x90, 0x03, 0xc2, 0x0d, 0x2c, 0x99, 0x47, 0xbe, 0x3a, 0x23, 0x19, 0x47, 0x7d,
- 0x00, 0x46, 0xd2, 0x24, 0xa3, 0x3c, 0x61, 0x97, 0x9a, 0x00, 0x34, 0x26, 0xc0, 0xcb, 0x57, 0x3c,
- 0x63, 0x97, 0x88, 0x58, 0x8a, 0x87, 0x44, 0x21, 0x52, 0xe1, 0xb7, 0x85, 0xa2, 0x80, 0xa4, 0xc3,
- 0xdf, 0xf0, 0xe4, 0xb7, 0x70, 0x2f, 0x25, 0xcc, 0x97, 0x7a, 0x15, 0xfc, 0x56, 0x4a, 0x98, 0x70,
- 0xe7, 0xc3, 0xe6, 0xef, 0xdf, 0x6d, 0xd5, 0xec, 0x9a, 0xeb, 0xc1, 0xea, 0x54, 0x2f, 0xb3, 0x34,
- 0x19, 0x65, 0x04, 0x3d, 0x06, 0x5b, 0x93, 0x9f, 0x39, 0xd6, 0xc6, 0xfc, 0xac, 0x28, 0xe5, 0x1b,
- 0xdd, 0x5f, 0x2c, 0xb8, 0x23, 0x56, 0x5f, 0x31, 0xca, 0x89, 0xd8, 0x72, 0x13, 0xd0, 0xe3, 0xb0,
- 0xd4, 0x8c, 0xb0, 0x14, 0x79, 0x30, 0x5f, 0xca, 0x83, 0x27, 0xd0, 0x51, 0x19, 0xe8, 0x87, 0xaa,
- 0x82, 0x24, 0xea, 0x85, 0xfe, 0x3d, 0xd3, 0xe7, 0x52, 0x89, 0x79, 0x4b, 0x41, 0xa9, 0xe2, 0x1c,
- 0x68, 0x05, 0xc9, 0x88, 0x93, 0x11, 0xd7, 0xb9, 0x31, 0x16, 0x35, 0x61, 0x96, 0xfb, 0x04, 0xde,
- 0xac, 0x60, 0xd3, 0x54, 0xbd, 0x03, 0xb7, 0xc2, 0xb3, 0x34, 0xa2, 0x01, 0xe6, 0xc4, 0x27, 0x8c,
- 0x25, 0x4c, 0xd7, 0x6d, 0x27, 0x57, 0xef, 0x09, 0xad, 0xfb, 0x87, 0xa5, 0x4c, 0x7c, 0x91, 0x86,
- 0xf8, 0xe6, 0xfc, 0xcc, 0x4c, 0x8a, 0xe9, 0x85, 0x51, 0xd0, 0x57, 0xff, 0x0b, 0xfa, 0x1a, 0x7f,
- 0x9f, 0xbe, 0xe6, 0x74, 0xfa, 0x7a, 0x70, 0xb7, 0x8a, 0x5d, 0xf3, 0x27, 0x1a, 0x9b, 0xc1, 0x9a,
- 0x12, 0xdc, 0x9f, 0x35, 0x59, 0xbb, 0x24, 0x22, 0xff, 0x32, 0x59, 0x93, 0xf0, 0xe7, 0xaf, 0x07,
- 0x3f, 0x07, 0xe9, 0x28, 0x90, 0xa6, 0xcf, 0x0a, 0xa4, 0xfb, 0x83, 0x05, 0x6f, 0x88, 0xa5, 0x7d,
- 0x3a, 0x0a, 0x6f, 0x0a, 0x26, 0x0f, 0x6e, 0xcd, 0x0c, 0x6e, 0x17, 0x6c, 0x46, 0xce, 0xa9, 0xec,
- 0xab, 0x2a, 0xea, 0xb9, 0x8c, 0xd6, 0xa0, 0x1d, 0x52, 0x46, 0x02, 0x79, 0x49, 0x5d, 0x2e, 0x16,
- 0x8a, 0xbc, 0x25, 0x7c, 0xa4, 0xaa, 0xb7, 0x70, 0x51, 0x07, 0xe8, 0xbe, 0xee, 0x30, 0xca, 0xbb,
- 0xe5, 0x6a, 0x1f, 0x50, 0x3d, 0xc7, 0xfd, 0xda, 0x40, 0xb8, 0x4f, 0xa3, 0x7f, 0xbc, 0xf6, 0x67,
- 0xe0, 0xcb, 0x11, 0x9c, 0x17, 0x08, 0x94, 0x0b, 0x1a, 0xc1, 0xb4, 0x79, 0xba, 0x0a, 0xed, 0x98,
- 0xc6, 0xc4, 0xe7, 0x97, 0x29, 0xd1, 0x63, 0xc5, 0x16, 0x8a, 0xc1, 0x65, 0x4a, 0x4a, 0xfd, 0x7d,
- 0xbe, 0xd4, 0xdf, 0xf3, 0x11, 0x52, 0x2f, 0x46, 0x88, 0xfb, 0x9b, 0xa5, 0x02, 0x7f, 0x40, 0xf8,
- 0x4e, 0x14, 0x09, 0x52, 0xb2, 0x1b, 0x06, 0x38, 0xa2, 0x62, 0xe0, 0x0a, 0xb7, 0x96, 0x3c, 0x25,
- 0xa0, 0x07, 0xd0, 0x51, 0x31, 0xa3, 0xc9, 0xc8, 0x0f, 0x49, 0x16, 0x48, 0xcf, 0x6c, 0x6f, 0x29,
- 0xd7, 0xee, 0x92, 0x2c, 0x40, 0x1f, 0x40, 0x3d, 0x4b, 0x98, 0x2a, 0xf1, 0x4e, 0xff, 0x81, 0x19,
- 0xad, 0x49, 0xf7, 0x7a, 0x47, 0x09, 0xe3, 0x4f, 0x2f, 0x3d, 0x79, 0xc4, 0xdd, 0x84, 0xa6, 0x92,
- 0x51, 0x1b, 0x1a, 0x83, 0xe7, 0x83, 0x17, 0x7b, 0xcb, 0x73, 0xa8, 0x03, 0xf0, 0xcc, 0xdb, 0xdb,
- 0x19, 0xec, 0xed, 0xfa, 0x3b, 0x83, 0x65, 0x2b, 0xe7, 0xda, 0x87, 0x95, 0x09, 0x9b, 0xd7, 0x49,
- 0x18, 0xb4, 0x0e, 0x0b, 0x64, 0x14, 0xfa, 0xc9, 0x89, 0x9a, 0x53, 0x35, 0x09, 0xa6, 0x4d, 0x46,
- 0xe1, 0x67, 0x27, 0x62, 0x97, 0xfb, 0x93, 0x95, 0x8f, 0xa8, 0x7d, 0xd9, 0xa7, 0x38, 0x09, 0x45,
- 0x04, 0xfe, 0x8f, 0xa5, 0xd3, 0x87, 0xb5, 0xe9, 0xae, 0x16, 0x09, 0x28, 0x73, 0x49, 0x27, 0xa0,
- 0xf8, 0x76, 0xbf, 0xa9, 0xa9, 0x6c, 0x7d, 0x41, 0x33, 0xfe, 0xdf, 0xa6, 0xcc, 0xfb, 0xa5, 0x94,
- 0xd9, 0x34, 0xe3, 0x55, 0x75, 0xae, 0x94, 0x30, 0x62, 0xa0, 0x24, 0x27, 0x27, 0x19, 0x51, 0x43,
- 0x73, 0xc9, 0xd3, 0xd2, 0xf5, 0x12, 0xe9, 0x63, 0xd5, 0xe8, 0x8d, 0x9b, 0xae, 0x93, 0x46, 0xfd,
- 0xef, 0x9b, 0xb0, 0x20, 0x54, 0x47, 0x84, 0x9d, 0xd3, 0x80, 0xa0, 0x63, 0xd5, 0x86, 0x2a, 0x0f,
- 0x1b, 0xe4, 0x56, 0x0a, 0x61, 0xca, 0xdb, 0xac, 0xbb, 0x39, 0x73, 0x8f, 0xee, 0xe4, 0x73, 0x8f,
- 0x2c, 0x74, 0x08, 0x4b, 0xa5, 0xb7, 0x00, 0x5a, 0x33, 0x4f, 0x56, 0x9f, 0x3f, 0xdd, 0xb7, 0xae,
- 0x58, 0x1d, 0x5b, 0xdc, 0xb2, 0xd0, 0x11, 0x74, 0xca, 0xe3, 0x11, 0x95, 0x0e, 0x4d, 0x3c, 0x19,
- 0xba, 0xeb, 0x57, 0x2d, 0x1b, 0x46, 0x3f, 0x57, 0x46, 0x8b, 0x71, 0x54, 0x36, 0x3a, 0x31, 0x5a,
- 0xcb, 0x46, 0xa7, 0x4c, 0xb1, 0x39, 0xf4, 0x09, 0x2c, 0x9a, 0x33, 0x02, 0xad, 0x9a, 0x27, 0x2a,
- 0xc3, 0xad, 0xbb, 0x36, 0x7d, 0xd1, 0x20, 0xd2, 0x30, 0x27, 0x1a, 0xf6, 0xa4, 0x39, 0x63, 0x92,
- 0x4c, 0x9a, 0x33, 0x7b, 0xbc, 0x34, 0xf7, 0x52, 0xfd, 0xbd, 0x18, 0x3d, 0x09, 0xad, 0xcf, 0x6e,
- 0x80, 0xdd, 0xb7, 0xaf, 0x5c, 0x9f, 0x8c, 0x77, 0x9e, 0xa2, 0xe5, 0x78, 0x57, 0x6b, 0xa4, 0x1c,
- 0xef, 0x89, 0xbc, 0x96, 0x16, 0x89, 0xaa, 0xfd, 0x6a, 0xc3, 0x40, 0xd5, 0x14, 0x9c, 0xd6, 0xf9,
- 0xba, 0xf7, 0x67, 0x6f, 0x2a, 0xae, 0x79, 0xfa, 0xe8, 0x4b, 0xb1, 0x35, 0xc2, 0xc7, 0xbd, 0x20,
- 0x89, 0xb7, 0xd5, 0xe7, 0xc3, 0x84, 0x0d, 0xb7, 0x95, 0x81, 0x87, 0xf2, 0x27, 0x74, 0x7b, 0x98,
- 0x68, 0x39, 0x3d, 0x3e, 0x6e, 0x4a, 0xd5, 0xe3, 0x3f, 0x03, 0x00, 0x00, 0xff, 0xff, 0x75, 0x97,
- 0x95, 0xa6, 0xbb, 0x0e, 0x00, 0x00,
+func init() { proto.RegisterFile("wiki.proto", fileDescriptor_wiki_b7336222204a13c2) }
+
+var fileDescriptor_wiki_b7336222204a13c2 = []byte{
+ // 1117 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x57, 0x5d, 0x6f, 0xdc, 0x44,
+ 0x17, 0x7e, 0xbd, 0xd9, 0x0f, 0xef, 0x49, 0xb2, 0x4d, 0xe7, 0x2d, 0xc9, 0x76, 0x13, 0x42, 0xe4,
+ 0xb4, 0x22, 0x5c, 0x74, 0x53, 0xb6, 0x17, 0x08, 0x09, 0xa4, 0xa6, 0x4d, 0x52, 0x55, 0xaa, 0xa0,
+ 0x72, 0x96, 0x46, 0x20, 0x24, 0x6b, 0x62, 0x4f, 0x36, 0xa3, 0xd8, 0x6b, 0x33, 0x9e, 0x24, 0xda,
+ 0x1f, 0xc1, 0x35, 0x42, 0xe2, 0x86, 0x5b, 0x7e, 0x0d, 0xe2, 0x5f, 0x70, 0xcb, 0x25, 0x12, 0x12,
+ 0x9a, 0x8f, 0xb5, 0xc7, 0xf6, 0x66, 0x21, 0x04, 0x04, 0x77, 0x73, 0xce, 0xcc, 0x9c, 0x39, 0xe7,
+ 0x39, 0x1f, 0x8f, 0x0d, 0x70, 0x45, 0xcf, 0x69, 0x3f, 0x61, 0x31, 0x8f, 0x51, 0x73, 0x44, 0x39,
+ 0x0e, 0x27, 0xbd, 0xa5, 0xf4, 0x0c, 0x33, 0x12, 0x28, 0xad, 0xf3, 0xb5, 0x05, 0x77, 0x8f, 0xe9,
+ 0x39, 0x7d, 0x1e, 0x47, 0x11, 0xe5, 0xfb, 0x84, 0x63, 0x1a, 0xa6, 0x08, 0x41, 0x7d, 0x8c, 0x23,
+ 0xd2, 0xb5, 0xb6, 0xac, 0x9d, 0x25, 0x57, 0xae, 0xd1, 0x3d, 0x68, 0x90, 0x08, 0xd3, 0xb0, 0x5b,
+ 0x93, 0x4a, 0x25, 0xa0, 0x2e, 0xb4, 0x22, 0x92, 0xa6, 0x78, 0x44, 0xba, 0x0b, 0x52, 0x3f, 0x15,
+ 0xd1, 0x1a, 0xb4, 0x2e, 0x52, 0xc2, 0x3c, 0x1a, 0x74, 0xeb, 0x5b, 0xd6, 0x4e, 0xc3, 0x6d, 0x0a,
+ 0xf1, 0x65, 0x80, 0xd6, 0xa1, 0x2d, 0x37, 0xe4, 0x0b, 0x0d, 0x79, 0xc9, 0x16, 0x8a, 0x4f, 0x70,
+ 0x44, 0x9c, 0x21, 0xdc, 0x11, 0xee, 0xbc, 0xc6, 0x23, 0xf2, 0x86, 0xb0, 0x94, 0xc6, 0x63, 0xf4,
+ 0x1e, 0x34, 0x7d, 0xe9, 0x9d, 0x74, 0x67, 0x71, 0x70, 0xb7, 0xaf, 0x22, 0xe9, 0xbf, 0xa0, 0x5c,
+ 0xb9, 0xed, 0xea, 0x03, 0x68, 0x15, 0x9a, 0xa7, 0x31, 0x8b, 0x30, 0x97, 0x4e, 0xb6, 0x5d, 0x2d,
+ 0x39, 0x3f, 0x5b, 0x60, 0x4f, 0xcd, 0xa2, 0xf7, 0xa1, 0x75, 0xa9, 0x4c, 0x6b, 0x83, 0x6b, 0x53,
+ 0x83, 0xa5, 0x97, 0xdd, 0xe9, 0xb9, 0xeb, 0xec, 0x0a, 0x4c, 0x38, 0xe5, 0xe1, 0x34, 0x76, 0x25,
+ 0xa0, 0xfb, 0x60, 0x5f, 0xb0, 0xd0, 0x4b, 0x30, 0x3f, 0x93, 0xa1, 0xb7, 0xdd, 0xd6, 0x05, 0x0b,
+ 0x5f, 0x63, 0x7e, 0x26, 0x80, 0x95, 0x6a, 0x15, 0xb6, 0x5c, 0x67, 0x60, 0x37, 0x0d, 0xb0, 0x37,
+ 0x01, 0xce, 0x68, 0xca, 0x63, 0x46, 0x7d, 0x1c, 0x76, 0x5b, 0x5b, 0xd6, 0x8e, 0xed, 0x1a, 0x1a,
+ 0xf1, 0x04, 0xc3, 0x57, 0x5e, 0x80, 0x39, 0xee, 0xda, 0x0a, 0x77, 0x86, 0xaf, 0xf6, 0x31, 0xc7,
+ 0xce, 0x77, 0x16, 0xf4, 0x44, 0x20, 0x2f, 0x08, 0x37, 0x62, 0x49, 0x5d, 0xf2, 0xd5, 0x05, 0x49,
+ 0x39, 0x1a, 0x00, 0x30, 0x92, 0xc4, 0x29, 0xe5, 0x31, 0x9b, 0x68, 0x00, 0xd0, 0x14, 0x00, 0x37,
+ 0xdb, 0x71, 0x8d, 0x53, 0x22, 0x63, 0x09, 0x1e, 0x11, 0x15, 0x91, 0x4a, 0xbf, 0x2d, 0x14, 0x79,
+ 0x48, 0x3a, 0xfd, 0x0d, 0x57, 0xae, 0x85, 0x7b, 0x09, 0x61, 0x9e, 0xd4, 0xab, 0xe4, 0xb7, 0x12,
+ 0xc2, 0x84, 0x3b, 0x8e, 0x0b, 0xeb, 0x33, 0xbd, 0x4b, 0x93, 0x78, 0x9c, 0x12, 0xf4, 0x04, 0x6c,
+ 0x0d, 0x7a, 0xda, 0xb5, 0xb6, 0x16, 0xe6, 0x65, 0x27, 0x3b, 0xe8, 0xfc, 0x64, 0xc1, 0x3d, 0xb1,
+ 0x7b, 0xcc, 0x28, 0x27, 0xe2, 0xc8, 0x6d, 0x82, 0x9d, 0xa6, 0xa3, 0x66, 0xa4, 0x23, 0xcf, 0xff,
+ 0x42, 0x21, 0xff, 0x4f, 0xa1, 0xa3, 0x2a, 0xcf, 0x0b, 0x54, 0xe7, 0xc8, 0x68, 0x17, 0x07, 0xf7,
+ 0x4d, 0x9f, 0x0b, 0xad, 0xe5, 0x2e, 0xfb, 0x85, 0x4e, 0xeb, 0x42, 0xcb, 0x8f, 0xc7, 0x9c, 0x8c,
+ 0xb9, 0xae, 0x89, 0xa9, 0xe8, 0x3c, 0x85, 0xb7, 0x4a, 0x31, 0x69, 0x88, 0xde, 0x85, 0x3b, 0xc1,
+ 0x45, 0x12, 0x52, 0x1f, 0x73, 0xe2, 0x11, 0xc6, 0x62, 0xa6, 0xfb, 0xb4, 0x93, 0xa9, 0x0f, 0x84,
+ 0xd6, 0xf9, 0xc5, 0x52, 0x26, 0x3e, 0x4b, 0x02, 0x7c, 0x7b, 0x5c, 0xe6, 0x16, 0xc1, 0xec, 0x46,
+ 0xc8, 0x61, 0xab, 0xff, 0x01, 0x6c, 0x8d, 0xbf, 0x0e, 0x5b, 0xb3, 0x08, 0x5b, 0x1f, 0x56, 0xcb,
+ 0x31, 0x6b, 0xdc, 0xc4, 0x00, 0x33, 0xd0, 0x52, 0x82, 0xf3, 0x83, 0x06, 0x69, 0x9f, 0x84, 0xe4,
+ 0x1f, 0x06, 0xa9, 0x1a, 0xf6, 0xc2, 0xcd, 0xc2, 0x76, 0xba, 0x2a, 0x38, 0xd3, 0x57, 0x15, 0x9c,
+ 0xf3, 0xad, 0x05, 0xff, 0x17, 0x5b, 0x87, 0x74, 0x1c, 0xdc, 0x36, 0x88, 0x2c, 0x99, 0x35, 0x33,
+ 0x99, 0x3d, 0xb0, 0x19, 0xb9, 0xa4, 0x72, 0x6e, 0xaa, 0x2c, 0x67, 0x32, 0xda, 0x80, 0x76, 0x40,
+ 0x19, 0xf1, 0xe5, 0x23, 0x75, 0xb9, 0x99, 0x2b, 0x9c, 0x8f, 0x54, 0x77, 0xe6, 0xae, 0xe9, 0x84,
+ 0x3c, 0xd0, 0x93, 0x43, 0x79, 0xb5, 0x52, 0xee, 0x73, 0x35, 0x4b, 0x9c, 0x49, 0x1e, 0xd8, 0x21,
+ 0x0d, 0xff, 0xf6, 0xd6, 0x9e, 0x13, 0x96, 0x73, 0x99, 0x3b, 0xae, 0x9e, 0xd6, 0x8e, 0xcf, 0xa2,
+ 0xc7, 0x75, 0x68, 0x47, 0x34, 0x22, 0x1e, 0x9f, 0x24, 0x44, 0xb3, 0x84, 0x2d, 0x14, 0xc3, 0x49,
+ 0x42, 0x0a, 0xe3, 0x7a, 0xa1, 0x30, 0xae, 0x33, 0x46, 0xa8, 0xe7, 0x8c, 0x20, 0xe8, 0x6a, 0x55,
+ 0x0f, 0xc9, 0xbd, 0x30, 0x14, 0x58, 0xa4, 0xb7, 0xcc, 0x67, 0x48, 0x05, 0x7f, 0x0a, 0xb7, 0x96,
+ 0x5d, 0x25, 0xa0, 0x87, 0xd0, 0x51, 0x29, 0xa2, 0xf1, 0xd8, 0x0b, 0x48, 0xea, 0x4b, 0xcf, 0x6c,
+ 0x77, 0x39, 0xd3, 0xee, 0x93, 0xd4, 0x47, 0x1f, 0x42, 0x3d, 0x8d, 0x99, 0xea, 0xe0, 0xce, 0xe0,
+ 0xa1, 0x99, 0xa4, 0xaa, 0x7b, 0xfd, 0xa3, 0x98, 0xf1, 0x67, 0x13, 0x57, 0x5e, 0x71, 0xb6, 0xa1,
+ 0xa9, 0x64, 0xd4, 0x86, 0xc6, 0xf0, 0xe5, 0xf0, 0xd5, 0xc1, 0xca, 0xff, 0x50, 0x07, 0xe0, 0xb9,
+ 0x7b, 0xb0, 0x37, 0x3c, 0xd8, 0xf7, 0xf6, 0x86, 0x2b, 0x96, 0xe3, 0xc1, 0x5a, 0xc5, 0xd6, 0x4d,
+ 0xea, 0x03, 0x6d, 0xc2, 0x22, 0x19, 0x07, 0x5e, 0x7c, 0xaa, 0xe8, 0xa6, 0x26, 0x83, 0x68, 0x93,
+ 0x71, 0xf0, 0xe9, 0xa9, 0x24, 0x9c, 0xef, 0xad, 0x8c, 0x71, 0x0e, 0xe5, 0xf8, 0xe1, 0x24, 0x10,
+ 0xc8, 0xff, 0x97, 0x3a, 0x64, 0x00, 0x1b, 0xb3, 0x5d, 0xcc, 0x0b, 0x4e, 0xd6, 0x8e, 0x2e, 0x38,
+ 0xb1, 0x76, 0x7e, 0xd3, 0xa4, 0xf7, 0x8a, 0xa6, 0xfc, 0xdf, 0x2d, 0x91, 0x0f, 0x0a, 0x25, 0xb2,
+ 0x6d, 0xe6, 0xa9, 0xec, 0x5c, 0xa1, 0x40, 0x04, 0x3f, 0xc4, 0xa7, 0xa7, 0x29, 0x51, 0xdc, 0xb7,
+ 0xec, 0x6a, 0xe9, 0xcf, 0x15, 0xce, 0xc7, 0x6a, 0x6e, 0x1b, 0x2f, 0xdc, 0xa4, 0x6c, 0x06, 0x3f,
+ 0x36, 0x61, 0x51, 0xa8, 0x8e, 0x08, 0xbb, 0xa4, 0x3e, 0x41, 0x67, 0x6a, 0xcc, 0x94, 0xbe, 0x4b,
+ 0x90, 0x53, 0x2a, 0xf8, 0x19, 0x9f, 0x54, 0xbd, 0xed, 0xb9, 0x67, 0xf4, 0x80, 0x6e, 0xfe, 0xfa,
+ 0xcd, 0x4e, 0xcd, 0xae, 0x3d, 0xb6, 0xd0, 0x1b, 0x58, 0x2e, 0x10, 0x3b, 0xda, 0x30, 0xef, 0x97,
+ 0xbf, 0x61, 0x7a, 0x6f, 0x5f, 0xb3, 0x5b, 0xb0, 0x6b, 0xed, 0x58, 0xe8, 0x73, 0xe8, 0x14, 0x99,
+ 0x0f, 0x15, 0xae, 0x56, 0xbe, 0x02, 0x7a, 0x9b, 0xd7, 0x6d, 0x57, 0x4c, 0x1f, 0x2b, 0xd3, 0x39,
+ 0xef, 0x14, 0x4d, 0x57, 0xb8, 0xb3, 0x68, 0x7a, 0x06, 0x5d, 0x69, 0xd3, 0xe8, 0x08, 0x96, 0x4c,
+ 0x6a, 0x40, 0xeb, 0xe6, 0xbd, 0x12, 0x97, 0xf5, 0x36, 0x66, 0x6f, 0x56, 0x00, 0x36, 0x8c, 0x8a,
+ 0xb1, 0x5d, 0x35, 0x6a, 0xf0, 0x48, 0xd5, 0xa8, 0x39, 0xe9, 0x0d, 0xa3, 0x5f, 0xaa, 0x1f, 0x13,
+ 0x63, 0x4e, 0xa1, 0xcd, 0xf9, 0xc3, 0xb0, 0xf7, 0xce, 0xb5, 0xfb, 0xd7, 0xd5, 0x44, 0x56, 0xcc,
+ 0xc5, 0x9a, 0x28, 0x77, 0x51, 0xb1, 0x26, 0x2a, 0x1d, 0x60, 0xd8, 0x3d, 0x57, 0x33, 0xa2, 0x3c,
+ 0x58, 0x50, 0xb9, 0x64, 0x67, 0x4d, 0xc6, 0xde, 0x83, 0xf9, 0x87, 0xca, 0x8f, 0x3d, 0x7b, 0xfc,
+ 0x85, 0xb8, 0x10, 0xe2, 0x93, 0xbe, 0x1f, 0x47, 0xbb, 0x6a, 0xf9, 0x28, 0x66, 0xa3, 0x5d, 0x65,
+ 0xe6, 0x91, 0xfc, 0xe3, 0xdc, 0x1d, 0xc5, 0x5a, 0x4e, 0x4e, 0x4e, 0x9a, 0x52, 0xf5, 0xe4, 0xf7,
+ 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xbe, 0xe8, 0x4a, 0xa8, 0x0e, 0x00, 0x00,
}
diff --git a/vendor/vendor.json b/vendor/vendor.json
index f4bcddb45..5f4027f65 100644
--- a/vendor/vendor.json
+++ b/vendor/vendor.json
@@ -601,12 +601,12 @@
"revisionTime": "2016-03-31T18:18:00Z"
},
{
- "checksumSHA1": "HFrazf0o65h+4Ik+5CVMeUkUzIc=",
+ "checksumSHA1": "6sL15NP2KTW8DuCGHz5rp7F2uLg=",
"path": "gitlab.com/gitlab-org/gitaly-proto/go/gitalypb",
- "revision": "f3b64ddf1bb5f25298901fbdbb831ee52b7c17bc",
- "revisionTime": "2019-04-10T17:30:24Z",
- "version": "v1.22.0",
- "versionExact": "v1.22.0"
+ "revision": "a777d26a105f2da329a0d68e608a982fa69651ba",
+ "revisionTime": "2019-05-08T23:50:06Z",
+ "version": "v1.28.0",
+ "versionExact": "v1.28.0"
},
{
"checksumSHA1": "WMOuBgCyclqy+Mqunb0NbykaC4Y=",