mirror of
https://github.com/rancher/steve.git
synced 2025-09-11 20:29:52 +00:00
Implement /ext in Steve for Imperative API (#287)
This implements the Imperative API that is served at /ext with Steve. The imperative API is compatible with Kubernetes' API server and will be used as an extension API server.
This commit is contained in:
50
pkg/ext/apiserver_suite_test.go
Normal file
50
pkg/ext/apiserver_suite_test.go
Normal file
@@ -0,0 +1,50 @@
|
||||
package ext
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/suite"
|
||||
"k8s.io/client-go/kubernetes"
|
||||
"k8s.io/client-go/rest"
|
||||
"sigs.k8s.io/controller-runtime/pkg/envtest"
|
||||
)
|
||||
|
||||
type ExtensionAPIServerSuite struct {
|
||||
suite.Suite
|
||||
|
||||
ctx context.Context
|
||||
cancel context.CancelFunc
|
||||
|
||||
testEnv envtest.Environment
|
||||
client *kubernetes.Clientset
|
||||
restConfig *rest.Config
|
||||
}
|
||||
|
||||
func (s *ExtensionAPIServerSuite) SetupSuite() {
|
||||
var err error
|
||||
apiServer := &envtest.APIServer{}
|
||||
|
||||
s.testEnv = envtest.Environment{
|
||||
ControlPlane: envtest.ControlPlane{
|
||||
APIServer: apiServer,
|
||||
},
|
||||
}
|
||||
s.restConfig, err = s.testEnv.Start()
|
||||
s.Require().NoError(err)
|
||||
|
||||
s.client, err = kubernetes.NewForConfig(s.restConfig)
|
||||
s.Require().NoError(err)
|
||||
|
||||
s.ctx, s.cancel = context.WithCancel(context.Background())
|
||||
}
|
||||
|
||||
func (s *ExtensionAPIServerSuite) TearDownSuite() {
|
||||
s.cancel()
|
||||
err := s.testEnv.Stop()
|
||||
s.Require().NoError(err)
|
||||
}
|
||||
|
||||
func TestExtensionAPIServerSuite(t *testing.T) {
|
||||
suite.Run(t, new(ExtensionAPIServerSuite))
|
||||
}
|
Reference in New Issue
Block a user