Documentation ¶
Overview ¶
Package gitserver provides a smart Git HTTP server that can also set and remove hooks. The server is lightweight (<7M compiled with a ~2M footprint) and can mirror remote repositories in a containerized environment.
Index ¶
- Constants
- func GetClient() (buildv1client.Interface, error)
- func GetRepositoryBuildConfigs(c buildv1client.Interface, name string, out io.Writer) error
- func RepositoryURL(config *Config, name string, r *http.Request) *url.URL
- func Start(config *Config) error
- type Clone
- type Config
- type URL
- type URLType
Constants ¶
const (
EnvironmentHelp = `` /* 2291-byte string literal not displayed */
)
Variables ¶
This section is empty.
Functions ¶
func GetClient ¶ added in v1.3.0
func GetClient() (buildv1client.Interface, error)
GetClient returns a build client.
func GetRepositoryBuildConfigs ¶ added in v1.3.0
func RepositoryURL ¶
RepositoryURL creates the public URL for the named git repo. If both config.URL and request are nil, the returned URL will be nil.
Types ¶
type Config ¶
type Config struct { Home string GitBinary string URL *url.URL InternalURL *url.URL AllowHooks bool AllowPush bool AllowLazyCreate bool HookDirectory string MaxHookBytes int64 Listen string AuthenticatorFn func(http http.Handler) http.Handler CleanBeforeClone bool InitialClones map[string]Clone AuthMessage string }
Config represents the configuration to use for running the server
func NewDefaultConfig ¶
func NewDefaultConfig() *Config
NewDefaultConfig returns a default server config.
func NewEnvironmentConfig ¶ added in v1.3.0
NewEnvironmentConfig sets up the initial config from environment variables TODO break out the code that generates the handler functions so that they can be individually unit tested. Also separate out the code that generates the initial set of clones.
type URL ¶
URL represents a "Git URL"
func (URL) LocalPath ¶
LocalPath returns the path to a local repository in OS-native format. It is assumed that IsLocal() is true
func (URL) StringNoFragment ¶
StringNoFragment returns a string representation of the URL without its fragment