aggregatedapiserver support openapi
Signed-off-by: carlory <baofa.fan@daocloud.io>
This commit is contained in:
parent
36176d6a85
commit
8f019269b0
|
@ -10,6 +10,7 @@ import (
|
|||
"k8s.io/apimachinery/pkg/runtime/schema"
|
||||
utilerrors "k8s.io/apimachinery/pkg/util/errors"
|
||||
"k8s.io/apiserver/pkg/admission"
|
||||
"k8s.io/apiserver/pkg/endpoints/openapi"
|
||||
"k8s.io/apiserver/pkg/features"
|
||||
genericapiserver "k8s.io/apiserver/pkg/server"
|
||||
genericoptions "k8s.io/apiserver/pkg/server/options"
|
||||
|
@ -22,6 +23,7 @@ import (
|
|||
clusterv1alpha1 "github.com/karmada-io/karmada/pkg/apis/cluster/v1alpha1"
|
||||
clientset "github.com/karmada-io/karmada/pkg/generated/clientset/versioned"
|
||||
informers "github.com/karmada-io/karmada/pkg/generated/informers/externalversions"
|
||||
generatedopenapi "github.com/karmada-io/karmada/pkg/generated/openapi"
|
||||
)
|
||||
|
||||
const defaultEtcdPathPrefix = "/registry"
|
||||
|
@ -121,6 +123,8 @@ func (o *Options) Config() (*aggregatedapiserver.Config, error) {
|
|||
}
|
||||
|
||||
serverConfig := genericapiserver.NewRecommendedConfig(aggregatedapiserver.Codecs)
|
||||
serverConfig.OpenAPIConfig = genericapiserver.DefaultOpenAPIConfig(generatedopenapi.GetOpenAPIDefinitions, openapi.NewDefinitionNamer(aggregatedapiserver.Scheme))
|
||||
serverConfig.OpenAPIConfig.Info.Title = "Karmada"
|
||||
if err := o.RecommendedOptions.ApplyTo(serverConfig); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -114,3 +114,13 @@ informer-gen \
|
|||
--versioned-clientset-package=github.com/karmada-io/karmada/pkg/generated/clientset/versioned \
|
||||
--listers-package=github.com/karmada-io/karmada/pkg/generated/listers \
|
||||
--output-package=github.com/karmada-io/karmada/pkg/generated/informers
|
||||
|
||||
echo "Generating with openapi-gen"
|
||||
GO111MODULE=on go install k8s.io/code-generator/cmd/openapi-gen
|
||||
openapi-gen \
|
||||
--go-header-file hack/boilerplate/boilerplate.go.txt \
|
||||
--input-dirs "github.com/karmada-io/karmada/pkg/apis/cluster/v1alpha1" \
|
||||
--input-dirs "k8s.io/api/core/v1,k8s.io/apimachinery/pkg/api/resource" \
|
||||
--input-dirs "k8s.io/apimachinery/pkg/apis/meta/v1,k8s.io/apimachinery/pkg/runtime,k8s.io/apimachinery/pkg/version" \
|
||||
--output-package "github.com/karmada-io/karmada/pkg/generated/openapi" \
|
||||
-O zz_generated.openapi
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
// Package v1alpha1 is the v1alpha1 version of the API.
|
||||
// +k8s:openapi-gen=true
|
||||
// +k8s:deepcopy-gen=package,register
|
||||
// +k8s:conversion-gen=github.com/karmada-io/karmada/pkg/apis/cluster
|
||||
// +groupName=cluster.karmada.io
|
||||
|
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue