Documentation
¶
Overview ¶
Package controllers provides the implementation of the controller for the provider endpoints.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DiscoveryController ¶
type DiscoveryController struct {
*router.Router
Endpointers []Endpointer
}
func (*DiscoveryController) Register ¶
func (controller *DiscoveryController) Register(router *router.Router)
Register implements router.Controller.Register
type DownloaderController ¶
type DownloaderController struct {
*router.Router
ProviderService *services.ProviderService
ProxyProviderHandler *handlers.ProxyProviderHandler
}
func (*DownloaderController) Register ¶
func (controller *DownloaderController) Register(router *router.Router)
Register implements router.Controller.Register
type Endpointer ¶
type ModuleController ¶ added in v1.0.5
type ModuleController struct {
*router.Router
AuthMiddleware echo.MiddlewareFunc
ProxyModuleHandler *handlers.ProxyModuleHandler
Logger log.Logger
}
ModuleController exposes the modules.v1 registry protocol on the Terragrunt cache server, accepting requests authenticated with the cache server's API key and forwarding them to the upstream registry with the user's real credentials.
func (*ModuleController) Endpoints ¶ added in v1.0.5
func (c *ModuleController) Endpoints() map[string]any
Endpoints implements controllers.Endpointer.
The returned modules.v1 path is suffixed with `/` so clients performing service discovery against `.well-known/terraform.json` build well-formed module URLs. See https://developer.hashicorp.com/terraform/internals/module-registry-protocol.
func (*ModuleController) Register ¶ added in v1.0.5
func (c *ModuleController) Register(r *router.Router)
Register implements router.Controller.
type ProviderController ¶
type ProviderController struct {
Logger log.Logger
DownloaderController router.Controller
*router.Router
AuthMiddleware echo.MiddlewareFunc
ProxyProviderHandler *handlers.ProxyProviderHandler
ProviderService *services.ProviderService
ProviderHandlers []handlers.ProviderHandler
Server http.Server
CacheProviderHTTPStatusCode int
}
func (*ProviderController) Endpoints ¶
func (controller *ProviderController) Endpoints() map[string]any
Endpoints implements controllers.Endpointer.Endpoints
func (*ProviderController) Register ¶
func (controller *ProviderController) Register(router *router.Router)
Register implements router.Controller.Register