Skip to content

Clients and interfaces

Enroute has two inbound interfaces and one callback path.

Git client -- Git smart HTTP --> Enroute <-- gRPC -- application
                                    |
                                    +-- signed HTTP hooks --> application
InterfaceCallerUse
listen.gitGit clientsClone, fetch, and push over Git smart HTTP
listen.apiYour applicationCreate repositories, read Git data, and move refs over gRPC
Hook endpointEnrouteAsk your application for identity and policy decisions

Enroute terminates Git connections. Your application does not process pkt-lines or serve clone and push connections. It uses the gRPC API to read objects and metadata, then exposes them in its own UI or services.

The Git listener is normally public. Keep the API listener private: it authenticates nobody, so any client that can reach it can act as your application. See Security.

Enroute keeps refs in replicated logs on ledger nodes and Git data in an object store. See Storage.

Generated from docs/concepts/two-callers.md at bc0dc6e