1
0
mirror of https://github.com/rancher/steve.git synced 2025-04-29 03:33:52 +00:00
steve/pkg/server/resources/schema.go

48 lines
1.6 KiB
Go
Raw Normal View History

2019-08-13 23:36:03 +00:00
package resources
import (
2020-06-02 15:51:42 +00:00
"context"
2020-02-10 17:18:20 +00:00
"github.com/rancher/steve/pkg/accesscontrol"
2020-01-31 05:01:21 +00:00
"github.com/rancher/steve/pkg/client"
2019-09-11 21:05:00 +00:00
"github.com/rancher/steve/pkg/clustercache"
2020-01-31 05:37:59 +00:00
"github.com/rancher/steve/pkg/schema"
"github.com/rancher/steve/pkg/schemaserver/store/apiroot"
2020-03-01 16:00:08 +00:00
"github.com/rancher/steve/pkg/schemaserver/subscribe"
2020-01-31 05:37:59 +00:00
"github.com/rancher/steve/pkg/schemaserver/types"
"github.com/rancher/steve/pkg/server/resources/apigroups"
2020-05-31 04:45:11 +00:00
"github.com/rancher/steve/pkg/server/resources/clusters"
2020-01-31 05:37:59 +00:00
"github.com/rancher/steve/pkg/server/resources/common"
"github.com/rancher/steve/pkg/server/resources/counts"
2020-06-05 20:30:33 +00:00
"github.com/rancher/steve/pkg/server/resources/helm"
2020-03-12 20:14:47 +00:00
"github.com/rancher/steve/pkg/server/resources/userpreferences"
"github.com/rancher/steve/pkg/server/store/proxy"
2020-01-31 05:37:59 +00:00
"k8s.io/client-go/discovery"
2019-08-13 23:36:03 +00:00
)
2020-06-06 03:45:26 +00:00
func DefaultSchemas(ctx context.Context, baseSchema *types.APISchemas, ccache clustercache.ClusterCache, cg proxy.ClientGetter) (*types.APISchemas, error) {
2019-09-09 21:28:55 +00:00
counts.Register(baseSchema, ccache)
2020-03-01 16:00:08 +00:00
subscribe.Register(baseSchema)
2019-08-14 20:51:13 +00:00
apiroot.Register(baseSchema, []string{"v1"}, []string{"proxy:/apis"})
2020-03-12 20:14:47 +00:00
userpreferences.Register(baseSchema, cg)
2020-06-05 20:30:33 +00:00
helm.Register(baseSchema)
2020-06-06 03:45:26 +00:00
err := clusters.Register(ctx, baseSchema, cg, ccache)
return baseSchema, err
2020-01-31 05:37:59 +00:00
}
2019-08-13 23:36:03 +00:00
func DefaultSchemaTemplates(cf *client.Factory, lookup accesscontrol.AccessSetLookup, discovery discovery.DiscoveryInterface) []schema.Template {
2020-01-31 05:37:59 +00:00
return []schema.Template{
2020-02-10 17:18:20 +00:00
common.DefaultTemplate(cf, lookup),
apigroups.Template(discovery),
2020-06-05 20:30:33 +00:00
{
ID: "configmap",
Formatter: common.DefaultFormatter(helm.DropHelmData),
2020-06-05 20:30:33 +00:00
},
{
ID: "secret",
Formatter: common.DefaultFormatter(helm.DropHelmData),
2020-06-05 20:30:33 +00:00
},
2020-01-31 05:01:21 +00:00
}
2019-08-13 23:36:03 +00:00
}