Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func UnpackAuxiliaryBinaries ¶
func UnpackAuxiliaryBinaries(destinationDir string, shouldInclude func(binaryName string) bool) error
UnpackAuxiliaryBinaries unpacks the packed auxiliary binaries of Gitaly into destination directory.
Gitaly invoking auxiliary binaries across different releases is a source of backwards compatibility issues. The calling protocol may change and cause issues if we don't carefully maintain the compatibility. Major version changing the module path also causes problems for gob encoding as it effectively changes the name of every type. To avoid having to maintain backwards compatibility between the different Gitaly binaries, we want to pin a given gitaly binary to only ever call the auxiliary binaries of the same build. We achieve this by packing the auxiliary binaries in the main gitaly binary and unpacking them on start to a temporary directory we can call them from. This way updating the gitaly binaries on the disk is atomic and a running gitaly can't call auxiliary binaries from a different version.
Types ¶
This section is empty.
Directories
¶
| Path | Synopsis |
|---|---|
|
gitaly
command
|
|
|
gitaly-backup
command
|
|
|
gitaly-blackbox
command
|
|
|
gitaly-debug
command
|
|
|
gitaly-gpg
command
|
|
|
gitaly-hooks
command
|
|
|
gitaly-lfs-smudge
command
|
|
|
gitaly-ssh
command
|
|
|
gitaly-wrapper
command
|
|
|
praefect
command
|
|
|
internal
|
|
|
backoff
Package backoff implements exponential backoff mechanism based on gRPC's backoff algorithm https://github.com/grpc/grpc/blob/master/doc/connection-backoff.md
|
Package backoff implements exponential backoff mechanism based on gRPC's backoff algorithm https://github.com/grpc/grpc/blob/master/doc/connection-backoff.md |
|
bundleuri
Package bundleuri is used to enable the use [Bundle-URI] when the client clones/fetches from the repository.
|
Package bundleuri is used to enable the use [Bundle-URI] when the client clones/fetches from the repository. |
|
cache
Package cache supplies background workers for periodically cleaning the cache folder on all storages listed in the config file.
|
Package cache supplies background workers for periodically cleaning the cache folder on all storages listed in the config file. |
|
dontpanic
Package dontpanic provides function wrappers and supervisors to ensure that wrapped code does not panic and cause program crashes.
|
Package dontpanic provides function wrappers and supervisors to ensure that wrapped code does not panic and cause program crashes. |
|
git/pktline
Package pktline implements utility functions for working with the Git pkt-line format.
|
Package pktline implements utility functions for working with the Git pkt-line format. |
|
gitaly/storage
Package storage contains the storage layer of Gitaly.
|
Package storage contains the storage layer of Gitaly. |
|
gitaly/storage/mode
Package mode contains the file modes that are supported by the storage.
|
Package mode contains the file modes that are supported by the storage. |
|
gitaly/storage/mode/permission
Package permission defines constants for Posix permission bits.
|
Package permission defines constants for Posix permission bits. |
|
gitaly/storage/storagemgr/partition/log
positions.go
|
positions.go |
|
grpc/backchannel
Package backchannel implements connection multiplexing that allows for invoking gRPC methods from the server to the client.
|
Package backchannel implements connection multiplexing that allows for invoking gRPC methods from the server to the client. |
|
grpc/proxy
Package proxy provides a reverse proxy handler for gRPC.
|
Package proxy provides a reverse proxy handler for gRPC. |
|
praefect
Package praefect is a Gitaly reverse proxy for transparently routing gRPC calls to a set of Gitaly services.
|
Package praefect is a Gitaly reverse proxy for transparently routing gRPC calls to a set of Gitaly services. |
|
praefect/datastore
Package datastore provides data models and datastore persistence abstractions for tracking the state of repository replicas.
|
Package datastore provides data models and datastore persistence abstractions for tracking the state of repository replicas. |
|
praefect/datastore/advisorylock
Package advisorylock contains the lock IDs of all advisory locks used in Praefect.
|
Package advisorylock contains the lock IDs of all advisory locks used in Praefect. |
|
praefect/datastore/glsql
Package glsql (Gitaly SQL) is a helper package to work with plain SQL queries.
|
Package glsql (Gitaly SQL) is a helper package to work with plain SQL queries. |
|
streamcache
Package streamcache provides a cache for large blobs (in the order of gigabytes).
|
Package streamcache provides a cache for large blobs (in the order of gigabytes). |
|
unarycache
Package unarycache allows you to cache responses for unary gRPC messages.
|
Package unarycache allows you to cache responses for unary gRPC messages. |
|
proto
|
|
|
Package streamio contains wrappers intended for turning gRPC streams that send/receive messages with a []byte field into io.Writers and io.Readers.
|
Package streamio contains wrappers intended for turning gRPC streams that send/receive messages with a []byte field into io.Writers and io.Readers. |
|
tools
|
|
|
binary-size-checker
command
|
|
|
govulncheck-filter
command
|
|
|
module-updater
command
|
|
|
noticegen
command
|
|
|
panic-parser
command
|
|
|
protoc-gen-gitaly-lint
command
Command protoc-gen-gitaly-lint is designed to be used as a protobuf compiler plugin to verify Gitaly processes are being followed when writing RPC's.
|
Command protoc-gen-gitaly-lint is designed to be used as a protobuf compiler plugin to verify Gitaly processes are being followed when writing RPC's. |
|
protoc-gen-gitaly-protolist
command
Command protoc-gen-gitaly-protolist is designed to be used as a protobuf compiler to generate a list of protobuf files via a publicly accessible variable.
|
Command protoc-gen-gitaly-protolist is designed to be used as a protobuf compiler to generate a list of protobuf files via a publicly accessible variable. |
|
test-boot
command
|
