operations

package
v0.0.0-...-3fd5aad Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 8, 2018 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type LunaformAPI

type LunaformAPI struct {
	Middleware func(middleware.Builder) http.Handler

	// BasicAuthenticator generates a runtime.Authenticator from the supplied basic auth function.
	// It has a default implemention in the security package, however you can replace it for your particular usage.
	BasicAuthenticator func(security.UserPassAuthentication) runtime.Authenticator
	// APIKeyAuthenticator generates a runtime.Authenticator from the supplied token auth function.
	// It has a default implemention in the security package, however you can replace it for your particular usage.
	APIKeyAuthenticator func(string, string, security.TokenAuthentication) runtime.Authenticator
	// BearerAuthenticator generates a runtime.Authenticator from the supplied bearer token auth function.
	// It has a default implemention in the security package, however you can replace it for your particular usage.
	BearerAuthenticator func(string, security.ScopedTokenAuthentication) runtime.Authenticator

	// JSONConsumer registers a consumer for a "application/vnd.lunaform.v1+json" mime type
	JSONConsumer runtime.Consumer

	// JSONProducer registers a producer for a "application/vnd.lunaform.v1+json" mime type
	JSONProducer runtime.Producer

	// APIKeyAuth registers a function that takes a token and returns a principal
	// it performs authentication based on an api key x-lunaform-auth provided in the header
	APIKeyAuth func(string) (*models.ResourceAuthUser, error)

	// APIAuthorizer provides access control (ACL/RBAC/ABAC) by providing access to the request and authenticated principal
	APIAuthorizer runtime.Authorizer

	// ModulesCreateModuleHandler sets the operation handler for the create module operation
	ModulesCreateModuleHandler modules.CreateModuleHandler
	// ProvidersCreateProviderHandler sets the operation handler for the create provider operation
	ProvidersCreateProviderHandler providers.CreateProviderHandler
	// ProvidersCreateProviderConfigurationHandler sets the operation handler for the create provider configuration operation
	ProvidersCreateProviderConfigurationHandler providers.CreateProviderConfigurationHandler
	// StateBackendsCreateStateBackendHandler sets the operation handler for the create state backend operation
	StateBackendsCreateStateBackendHandler state_backends.CreateStateBackendHandler
	// WorkspacesCreateWorkspaceHandler sets the operation handler for the create workspace operation
	WorkspacesCreateWorkspaceHandler workspaces.CreateWorkspaceHandler
	// ModulesDeleteModuleHandler sets the operation handler for the delete module operation
	ModulesDeleteModuleHandler modules.DeleteModuleHandler
	// ProvidersDeleteProviderHandler sets the operation handler for the delete provider operation
	ProvidersDeleteProviderHandler providers.DeleteProviderHandler
	// ProvidersDeleteProviderConfigurationHandler sets the operation handler for the delete provider configuration operation
	ProvidersDeleteProviderConfigurationHandler providers.DeleteProviderConfigurationHandler
	// StacksDeployStackHandler sets the operation handler for the deploy stack operation
	StacksDeployStackHandler stacks.DeployStackHandler
	// WorkspacesDescribeWorkspaceHandler sets the operation handler for the describe workspace operation
	WorkspacesDescribeWorkspaceHandler workspaces.DescribeWorkspaceHandler
	// ModulesGetModuleHandler sets the operation handler for the get module operation
	ModulesGetModuleHandler modules.GetModuleHandler
	// ProvidersGetProviderHandler sets the operation handler for the get provider operation
	ProvidersGetProviderHandler providers.GetProviderHandler
	// ProvidersGetProviderConfigurationHandler sets the operation handler for the get provider configuration operation
	ProvidersGetProviderConfigurationHandler providers.GetProviderConfigurationHandler
	// StacksGetStackHandler sets the operation handler for the get stack operation
	StacksGetStackHandler stacks.GetStackHandler
	// StacksListDeploymentsHandler sets the operation handler for the list deployments operation
	StacksListDeploymentsHandler stacks.ListDeploymentsHandler
	// ModulesListModulesHandler sets the operation handler for the list modules operation
	ModulesListModulesHandler modules.ListModulesHandler
	// ProvidersListProviderConfigurationsHandler sets the operation handler for the list provider configurations operation
	ProvidersListProviderConfigurationsHandler providers.ListProviderConfigurationsHandler
	// ProvidersListProvidersHandler sets the operation handler for the list providers operation
	ProvidersListProvidersHandler providers.ListProvidersHandler
	// ResourcesListResourceGroupsHandler sets the operation handler for the list resource groups operation
	ResourcesListResourceGroupsHandler resources.ListResourceGroupsHandler
	// ResourcesListResourcesHandler sets the operation handler for the list resources operation
	ResourcesListResourcesHandler resources.ListResourcesHandler
	// StacksListStacksHandler sets the operation handler for the list stacks operation
	StacksListStacksHandler stacks.ListStacksHandler
	// StateBackendsListStateBackendsHandler sets the operation handler for the list state backends operation
	StateBackendsListStateBackendsHandler state_backends.ListStateBackendsHandler
	// WorkspacesListWorkspacesHandler sets the operation handler for the list workspaces operation
	WorkspacesListWorkspacesHandler workspaces.ListWorkspacesHandler
	// StacksUndeployStackHandler sets the operation handler for the undeploy stack operation
	StacksUndeployStackHandler stacks.UndeployStackHandler
	// ProvidersUpdateProviderHandler sets the operation handler for the update provider operation
	ProvidersUpdateProviderHandler providers.UpdateProviderHandler
	// StateBackendsUpdateStateBackendHandler sets the operation handler for the update state backend operation
	StateBackendsUpdateStateBackendHandler state_backends.UpdateStateBackendHandler

	// ServeError is called when an error is received, there is a default handler
	// but you can set your own with this
	ServeError func(http.ResponseWriter, *http.Request, error)

	// ServerShutdown is called when the HTTP(S) server is shut down and done
	// handling all active connections and does not accept connections any more
	ServerShutdown func()

	// Custom command line argument groups with their descriptions
	CommandLineOptionsGroups []swag.CommandLineOptionsGroup

	// User defined logger function.
	Logger func(string, ...interface{})
	// contains filtered or unexported fields
}

LunaformAPI This is a RESTful server for managing Terraform plan and apply jobs and the auditing of actions to approve those apply jobs. The inspiration for this project is the AWS CloudFormation API's. The intention is to implement a locking mechanism not only for the terraform state, but for the plan and apply of terraform modules. Once a `module` plan starts, it is instantiated as a `stack` within the nomencalture of `lunaform`.

func NewLunaformAPI

func NewLunaformAPI(spec *loads.Document) *LunaformAPI

NewLunaformAPI creates a new Lunaform instance

func (*LunaformAPI) AuthenticatorsFor

func (o *LunaformAPI) AuthenticatorsFor(schemes map[string]spec.SecurityScheme) map[string]runtime.Authenticator

AuthenticatorsFor gets the authenticators for the specified security schemes

func (*LunaformAPI) Authorizer

func (o *LunaformAPI) Authorizer() runtime.Authorizer

Authorizer returns the registered authorizer

func (*LunaformAPI) ConsumersFor

func (o *LunaformAPI) ConsumersFor(mediaTypes []string) map[string]runtime.Consumer

ConsumersFor gets the consumers for the specified media types

func (*LunaformAPI) Context

func (o *LunaformAPI) Context() *middleware.Context

Context returns the middleware context for the lunaform API

func (*LunaformAPI) DefaultConsumes

func (o *LunaformAPI) DefaultConsumes() string

DefaultConsumes returns the default consumes media type

func (*LunaformAPI) DefaultProduces

func (o *LunaformAPI) DefaultProduces() string

DefaultProduces returns the default produces media type

func (*LunaformAPI) Formats

func (o *LunaformAPI) Formats() strfmt.Registry

Formats returns the registered string formats

func (*LunaformAPI) HandlerFor

func (o *LunaformAPI) HandlerFor(method, path string) (http.Handler, bool)

HandlerFor gets a http.Handler for the provided operation method and path

func (*LunaformAPI) Init

func (o *LunaformAPI) Init()

Init allows you to just initialize the handler cache, you can then recompose the middleware as you see fit

func (*LunaformAPI) ProducersFor

func (o *LunaformAPI) ProducersFor(mediaTypes []string) map[string]runtime.Producer

ProducersFor gets the producers for the specified media types

func (*LunaformAPI) RegisterConsumer

func (o *LunaformAPI) RegisterConsumer(mediaType string, consumer runtime.Consumer)

RegisterConsumer allows you to add (or override) a consumer for a media type.

func (*LunaformAPI) RegisterFormat

func (o *LunaformAPI) RegisterFormat(name string, format strfmt.Format, validator strfmt.Validator)

RegisterFormat registers a custom format validator

func (*LunaformAPI) RegisterProducer

func (o *LunaformAPI) RegisterProducer(mediaType string, producer runtime.Producer)

RegisterProducer allows you to add (or override) a producer for a media type.

func (*LunaformAPI) Serve

func (o *LunaformAPI) Serve(builder middleware.Builder) http.Handler

Serve creates a http handler to serve the API over HTTP can be used directly in http.ListenAndServe(":8000", api.Serve(nil))

func (*LunaformAPI) ServeErrorFor

func (o *LunaformAPI) ServeErrorFor(operationID string) func(http.ResponseWriter, *http.Request, error)

ServeErrorFor gets a error handler for a given operation id

func (*LunaformAPI) SetDefaultConsumes

func (o *LunaformAPI) SetDefaultConsumes(mediaType string)

SetDefaultConsumes returns the default consumes media type

func (*LunaformAPI) SetDefaultProduces

func (o *LunaformAPI) SetDefaultProduces(mediaType string)

SetDefaultProduces sets the default produces media type

func (*LunaformAPI) SetSpec

func (o *LunaformAPI) SetSpec(spec *loads.Document)

SetSpec sets a spec that will be served for the clients.

func (*LunaformAPI) Validate

func (o *LunaformAPI) Validate() error

Validate validates the registrations in the LunaformAPI

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL