Alex Ellis (VMware) 6937bc4d7f Move to auth package in faas-provider
The basic-auth middleware and credentials-loading code has been
moved into the faas-provider project. This has now been brought
back into the faas project via vendoring.

Signed-off-by: Alex Ellis (VMware) <alexellis2@gmail.com>
2018-09-06 16:14:53 +01:00
..
2018-09-06 16:14:53 +01:00
2018-09-06 16:14:53 +01:00
2018-09-06 16:14:53 +01:00

faas-provider

This is a common template or interface for you to start building your own OpenFaaS backend.

Checkout the backends guide here before starting.

OpenFaaS projects use the MIT License and are written in Golang. We encourage the same for external / third-party providers.

How to use this code

We will setup all the standard HTTP routes for you, then start listening on a given TCP port - it should be 8080.

Just implement the supplied routes.

For an example checkout the server.go file in the faas-netes Kubernetes backend.

I.e.:

	bootstrapHandlers := bootTypes.FaaSHandlers{
		FunctionProxy:  handlers.MakeProxy(),
		DeleteHandler:  handlers.MakeDeleteHandler(clientset),
		DeployHandler:  handlers.MakeDeployHandler(clientset),
		FunctionReader: handlers.MakeFunctionReader(clientset),
		ReplicaReader:  handlers.MakeReplicaReader(clientset),
		ReplicaUpdater: handlers.MakeReplicaUpdater(clientset),
		InfoHandler:    handlers.MakeInfoHandler(),
	}
	var port int
	port = 8080
	bootstrapConfig := bootTypes.FaaSConfig{
		ReadTimeout:  time.Second * 8,
		WriteTimeout: time.Second * 8,
		TCPPort:      &port,
	}

	bootstrap.Serve(&bootstrapHandlers, &bootstrapConfig)