Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrConfigRequired = errors.New("rest config is required")
Functions ¶
Types ¶
type Controllers ¶
type Controllers struct {
RESTConfig *rest.Config
K8s kubernetes.Interface
Core corev1.Interface
RBAC rbacv1.Interface
API apiregistrationv1.Interface
CRD apiextensionsv1.Interface
// contains filtered or unexported fields
}
func NewController ¶
func NewController(cfg *rest.Config, opts *generic.FactoryOptions) (*Controllers, error)
type ExtensionAPIServer ¶ added in v0.4.0
type ExtensionAPIServer interface {
// The ExtensionAPIServer is served at /ext in Steve's mux
http.Handler
// Run configures the API server and make the HTTP handler available
Run(ctx context.Context) error
// Registered returns a channel that will be close once the registration requests are received from the kube-apiserver.
Registered() <-chan struct{}
}
ExtensionAPIServer will run an extension API server. The extension API server will be accessible from Steve at the /ext endpoint and will be compatible with the aggregate API server in Kubernetes.
type Options ¶
type Options struct {
// Controllers If the controllers are passed in the caller must also start the controllers
Controllers *Controllers
ClientFactory *client.Factory
AccessSetLookup accesscontrol.AccessSetLookup
AuthMiddleware auth.Middleware
Next http.Handler
Router router.RouterFunc
AggregationSecretNamespace string
AggregationSecretName string
ClusterRegistry string
ServerVersion string
// SQLCache enables the SQLite-based caching mechanism
SQLCache bool
SQLCacheFactoryOptions factory.CacheFactoryOptions
// ExtensionAPIServer enables an extension API server that will be served
// under /ext
// If nil, Steve's default http handler for unknown routes will be served.
//
// In most cases, you'll want to use [github.com/rancher/steve/pkg/ext.NewExtensionAPIServer]
// to create an ExtensionAPIServer.
ExtensionAPIServer ExtensionAPIServer
// SkipWaitForExtensionAPIServer allows serving requests despite the ExtensionAPIServer may not have been registered yet.
SkipWaitForExtensionAPIServer bool
}
type Server ¶
type Server struct {
http.Handler
ClientFactory *client.Factory
ClusterCache clustercache.ClusterCache
SchemaFactory schema.Factory
RESTConfig *rest.Config
BaseSchemas *types.APISchemas
AccessSetLookup accesscontrol.AccessSetLookup
APIServer *apiserver.Server
ClusterRegistry string
Version string
SkipWaitForExtensionAPIServer bool
SQLCache bool
// contains filtered or unexported fields
}
func (*Server) ListenAndServe ¶
func (*Server) StartAggregation ¶
Click to show internal directories.
Click to hide internal directories.