mirror of
https://github.com/rancher/types.git
synced 2025-05-08 15:16:18 +00:00
Update APIs being used
This commit is contained in:
parent
b8273c5853
commit
3aced2bfa2
@ -4,7 +4,7 @@ import (
|
||||
"github.com/rancher/norman/condition"
|
||||
"github.com/rancher/norman/types"
|
||||
v1 "k8s.io/api/core/v1"
|
||||
extv1 "k8s.io/api/extensions/v1beta1"
|
||||
policyv1 "k8s.io/api/policy/v1beta1"
|
||||
rbacv1 "k8s.io/api/rbac/v1"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
)
|
||||
@ -99,8 +99,8 @@ type PodSecurityPolicyTemplate struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
Description string `json:"description"`
|
||||
Spec extv1.PodSecurityPolicySpec `json:"spec,omitempty"`
|
||||
Description string `json:"description"`
|
||||
Spec policyv1.PodSecurityPolicySpec `json:"spec,omitempty"`
|
||||
}
|
||||
|
||||
type PodSecurityPolicyTemplateProjectBinding struct {
|
||||
|
@ -10,7 +10,8 @@ import (
|
||||
v3 "github.com/rancher/types/apis/project.cattle.io/v3"
|
||||
"github.com/rancher/types/factory"
|
||||
"github.com/rancher/types/mapper"
|
||||
"k8s.io/api/apps/v1beta2"
|
||||
appsv1 "k8s.io/api/apps/v1"
|
||||
k8sappv1 "k8s.io/api/apps/v1"
|
||||
autoscaling "k8s.io/api/autoscaling/v2beta2"
|
||||
batchv1 "k8s.io/api/batch/v1"
|
||||
batchv1beta1 "k8s.io/api/batch/v1beta1"
|
||||
@ -136,7 +137,7 @@ func workloadTypes(schemas *types.Schemas) *types.Schemas {
|
||||
|
||||
func statefulSetTypes(schemas *types.Schemas) *types.Schemas {
|
||||
return schemas.
|
||||
AddMapperForType(&Version, v1beta2.StatefulSetUpdateStrategy{},
|
||||
AddMapperForType(&Version, k8sappv1.StatefulSetUpdateStrategy{},
|
||||
&m.Embed{Field: "rollingUpdate"},
|
||||
m.Enum{Field: "type", Options: []string{
|
||||
"RollingUpdate",
|
||||
@ -144,7 +145,7 @@ func statefulSetTypes(schemas *types.Schemas) *types.Schemas {
|
||||
}},
|
||||
m.Move{From: "type", To: "strategy"},
|
||||
).
|
||||
AddMapperForType(&Version, v1beta2.StatefulSetSpec{},
|
||||
AddMapperForType(&Version, k8sappv1.StatefulSetSpec{},
|
||||
&m.Move{
|
||||
From: "replicas",
|
||||
To: "scale",
|
||||
@ -171,15 +172,15 @@ func statefulSetTypes(schemas *types.Schemas) *types.Schemas {
|
||||
&m.Embed{Field: "template"},
|
||||
).
|
||||
MustImport(&Version, v3.WorkloadMetric{}).
|
||||
AddMapperForType(&Version, v1beta2.StatefulSet{},
|
||||
AddMapperForType(&Version, k8sappv1.StatefulSet{},
|
||||
&m.Move{
|
||||
From: "status",
|
||||
To: "statefulSetStatus",
|
||||
},
|
||||
NewWorkloadTypeMapper(),
|
||||
).
|
||||
MustImport(&Version, v1beta2.StatefulSetSpec{}, statefulSetConfigOverride{}).
|
||||
MustImportAndCustomize(&Version, v1beta2.StatefulSet{}, func(schema *types.Schema) {
|
||||
MustImport(&Version, k8sappv1.StatefulSetSpec{}, statefulSetConfigOverride{}).
|
||||
MustImportAndCustomize(&Version, k8sappv1.StatefulSet{}, func(schema *types.Schema) {
|
||||
schema.BaseType = "workload"
|
||||
schema.MustCustomizeField("name", func(field types.Field) types.Field {
|
||||
field.Type = "dnsLabelRestricted"
|
||||
@ -195,7 +196,7 @@ func statefulSetTypes(schemas *types.Schemas) *types.Schemas {
|
||||
|
||||
func replicaSetTypes(schemas *types.Schemas) *types.Schemas {
|
||||
return schemas.
|
||||
AddMapperForType(&Version, v1beta1.ReplicaSetSpec{},
|
||||
AddMapperForType(&Version, appsv1.ReplicaSetSpec{},
|
||||
&m.Move{
|
||||
From: "replicas",
|
||||
To: "scale",
|
||||
@ -206,7 +207,7 @@ func replicaSetTypes(schemas *types.Schemas) *types.Schemas {
|
||||
},
|
||||
).
|
||||
MustImport(&Version, v3.WorkloadMetric{}).
|
||||
AddMapperForType(&Version, v1beta1.ReplicaSet{},
|
||||
AddMapperForType(&Version, appsv1.ReplicaSet{},
|
||||
&m.Move{
|
||||
From: "status",
|
||||
To: "replicaSetStatus",
|
||||
@ -214,8 +215,8 @@ func replicaSetTypes(schemas *types.Schemas) *types.Schemas {
|
||||
&m.Embed{Field: "template"},
|
||||
NewWorkloadTypeMapper(),
|
||||
).
|
||||
MustImport(&Version, v1beta1.ReplicaSetSpec{}, replicaSetConfigOverride{}).
|
||||
MustImportAndCustomize(&Version, v1beta1.ReplicaSet{}, func(schema *types.Schema) {
|
||||
MustImport(&Version, appsv1.ReplicaSetSpec{}, replicaSetConfigOverride{}).
|
||||
MustImportAndCustomize(&Version, appsv1.ReplicaSet{}, func(schema *types.Schema) {
|
||||
schema.BaseType = "workload"
|
||||
schema.MustCustomizeField("name", func(field types.Field) types.Field {
|
||||
field.Type = "dnsLabelRestricted"
|
||||
@ -269,7 +270,7 @@ func replicationControllerTypes(schemas *types.Schemas) *types.Schemas {
|
||||
|
||||
func daemonSetTypes(schemas *types.Schemas) *types.Schemas {
|
||||
return schemas.
|
||||
AddMapperForType(&Version, v1beta2.DaemonSetUpdateStrategy{},
|
||||
AddMapperForType(&Version, k8sappv1.DaemonSetUpdateStrategy{},
|
||||
&m.Embed{Field: "rollingUpdate"},
|
||||
m.Enum{Field: "type", Options: []string{
|
||||
"RollingUpdate",
|
||||
@ -277,7 +278,7 @@ func daemonSetTypes(schemas *types.Schemas) *types.Schemas {
|
||||
}},
|
||||
m.Move{From: "type", To: "strategy"},
|
||||
).
|
||||
AddMapperForType(&Version, v1beta2.DaemonSetSpec{},
|
||||
AddMapperForType(&Version, k8sappv1.DaemonSetSpec{},
|
||||
&m.Embed{Field: "updateStrategy"},
|
||||
&m.BatchMove{
|
||||
From: []string{
|
||||
@ -291,15 +292,15 @@ func daemonSetTypes(schemas *types.Schemas) *types.Schemas {
|
||||
&m.Embed{Field: "template"},
|
||||
).
|
||||
MustImport(&Version, v3.WorkloadMetric{}).
|
||||
AddMapperForType(&Version, v1beta2.DaemonSet{},
|
||||
AddMapperForType(&Version, k8sappv1.DaemonSet{},
|
||||
&m.Move{
|
||||
From: "status",
|
||||
To: "daemonSetStatus",
|
||||
},
|
||||
NewWorkloadTypeMapper(),
|
||||
).
|
||||
MustImport(&Version, v1beta2.DaemonSetSpec{}, daemonSetOverride{}).
|
||||
MustImportAndCustomize(&Version, v1beta2.DaemonSet{}, func(schema *types.Schema) {
|
||||
MustImport(&Version, k8sappv1.DaemonSetSpec{}, daemonSetOverride{}).
|
||||
MustImportAndCustomize(&Version, k8sappv1.DaemonSet{}, func(schema *types.Schema) {
|
||||
schema.BaseType = "workload"
|
||||
schema.MustCustomizeField("name", func(field types.Field) types.Field {
|
||||
field.Type = "dnsLabelRestricted"
|
||||
@ -421,7 +422,7 @@ func cronJobTypes(schemas *types.Schemas) *types.Schemas {
|
||||
|
||||
func deploymentTypes(schemas *types.Schemas) *types.Schemas {
|
||||
return schemas.
|
||||
AddMapperForType(&Version, v1beta2.DeploymentStrategy{},
|
||||
AddMapperForType(&Version, k8sappv1.DeploymentStrategy{},
|
||||
&m.Embed{Field: "rollingUpdate", EmptyValueOk: true},
|
||||
m.Enum{Field: "type", Options: []string{
|
||||
"Recreate",
|
||||
@ -429,7 +430,7 @@ func deploymentTypes(schemas *types.Schemas) *types.Schemas {
|
||||
}},
|
||||
m.Move{From: "type", To: "strategy"},
|
||||
).
|
||||
AddMapperForType(&Version, v1beta2.DeploymentSpec{},
|
||||
AddMapperForType(&Version, k8sappv1.DeploymentSpec{},
|
||||
&m.Move{
|
||||
From: "strategy",
|
||||
To: "upgradeStrategy",
|
||||
@ -453,16 +454,16 @@ func deploymentTypes(schemas *types.Schemas) *types.Schemas {
|
||||
&m.Embed{Field: "template"},
|
||||
).
|
||||
MustImport(&Version, v3.WorkloadMetric{}).
|
||||
AddMapperForType(&Version, v1beta2.Deployment{},
|
||||
AddMapperForType(&Version, k8sappv1.Deployment{},
|
||||
&m.Move{
|
||||
From: "status",
|
||||
To: "deploymentStatus",
|
||||
},
|
||||
NewWorkloadTypeMapper(),
|
||||
).
|
||||
MustImport(&Version, v1beta2.DeploymentSpec{}, deploymentConfigOverride{}).
|
||||
MustImport(&Version, k8sappv1.DeploymentSpec{}, deploymentConfigOverride{}).
|
||||
MustImport(&Version, v3.DeploymentRollbackInput{}).
|
||||
MustImportAndCustomize(&Version, v1beta2.Deployment{}, func(schema *types.Schema) {
|
||||
MustImportAndCustomize(&Version, k8sappv1.Deployment{}, func(schema *types.Schema) {
|
||||
schema.BaseType = "workload"
|
||||
schema.ResourceActions = map[string]types.Action{
|
||||
"rollback": {
|
||||
|
@ -9,7 +9,7 @@ import (
|
||||
"github.com/rancher/norman/store/proxy"
|
||||
"github.com/rancher/norman/types"
|
||||
apiregistrationv1 "github.com/rancher/types/apis/apiregistration.k8s.io/v1"
|
||||
appsv1beta2 "github.com/rancher/types/apis/apps/v1beta2"
|
||||
appsv1 "github.com/rancher/types/apis/apps/v1"
|
||||
autoscaling "github.com/rancher/types/apis/autoscaling/v2beta2"
|
||||
batchv1 "github.com/rancher/types/apis/batch/v1"
|
||||
batchv1beta1 "github.com/rancher/types/apis/batch/v1beta1"
|
||||
@ -22,6 +22,7 @@ import (
|
||||
monitoringv1 "github.com/rancher/types/apis/monitoring.coreos.com/v1"
|
||||
istiov1alpha3 "github.com/rancher/types/apis/networking.istio.io/v1alpha3"
|
||||
knetworkingv1 "github.com/rancher/types/apis/networking.k8s.io/v1"
|
||||
policyv1beta1 "github.com/rancher/types/apis/policy/v1beta1"
|
||||
projectv3 "github.com/rancher/types/apis/project.cattle.io/v3"
|
||||
projectSchema "github.com/rancher/types/apis/project.cattle.io/v3/schema"
|
||||
rbacv1 "github.com/rancher/types/apis/rbac.authorization.k8s.io/v1"
|
||||
@ -181,7 +182,7 @@ type UserContext struct {
|
||||
K8sClient kubernetes.Interface
|
||||
|
||||
APIAggregation apiregistrationv1.Interface
|
||||
Apps appsv1beta2.Interface
|
||||
Apps appsv1.Interface
|
||||
Autoscaling autoscaling.Interface
|
||||
Project projectv3.Interface
|
||||
Core corev1.Interface
|
||||
@ -194,6 +195,7 @@ type UserContext struct {
|
||||
Cluster clusterv3.Interface
|
||||
Istio istiov1alpha3.Interface
|
||||
Storage storagev1.Interface
|
||||
Policy policyv1beta1.Interface
|
||||
}
|
||||
|
||||
func (w *UserContext) controllers() []controller.Starter {
|
||||
@ -210,6 +212,7 @@ func (w *UserContext) controllers() []controller.Starter {
|
||||
w.Monitoring,
|
||||
w.Cluster,
|
||||
w.Storage,
|
||||
w.Policy,
|
||||
}
|
||||
}
|
||||
|
||||
@ -233,6 +236,7 @@ func (w *UserContext) UserOnlyContext() *UserOnlyContext {
|
||||
Cluster: w.Cluster,
|
||||
Istio: w.Istio,
|
||||
Storage: w.Storage,
|
||||
Policy: w.Policy,
|
||||
}
|
||||
}
|
||||
|
||||
@ -244,7 +248,7 @@ type UserOnlyContext struct {
|
||||
K8sClient kubernetes.Interface
|
||||
|
||||
APIRegistration apiregistrationv1.Interface
|
||||
Apps appsv1beta2.Interface
|
||||
Apps appsv1.Interface
|
||||
Autoscaling autoscaling.Interface
|
||||
Project projectv3.Interface
|
||||
Core corev1.Interface
|
||||
@ -256,6 +260,7 @@ type UserOnlyContext struct {
|
||||
Cluster clusterv3.Interface
|
||||
Istio istiov1alpha3.Interface
|
||||
Storage storagev1.Interface
|
||||
Policy policyv1beta1.Interface
|
||||
}
|
||||
|
||||
func (w *UserOnlyContext) controllers() []controller.Starter {
|
||||
@ -270,6 +275,7 @@ func (w *UserOnlyContext) controllers() []controller.Starter {
|
||||
w.BatchV1Beta1,
|
||||
w.Monitoring,
|
||||
w.Storage,
|
||||
w.Policy,
|
||||
}
|
||||
}
|
||||
|
||||
@ -364,7 +370,7 @@ func NewUserContext(scaledContext *ScaledContext, config rest.Config, clusterNam
|
||||
return nil, err
|
||||
}
|
||||
|
||||
context.Apps, err = appsv1beta2.NewForConfig(config)
|
||||
context.Apps, err = appsv1.NewForConfig(config)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@ -399,6 +405,11 @@ func NewUserContext(scaledContext *ScaledContext, config rest.Config, clusterNam
|
||||
return nil, err
|
||||
}
|
||||
|
||||
context.Policy, err = policyv1beta1.NewForConfig(config)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
context.BatchV1, err = batchv1.NewForConfig(config)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@ -470,7 +481,7 @@ func NewUserOnlyContext(config rest.Config) (*UserOnlyContext, error) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
context.Apps, err = appsv1beta2.NewForConfig(config)
|
||||
context.Apps, err = appsv1.NewForConfig(config)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@ -500,6 +511,11 @@ func NewUserOnlyContext(config rest.Config) (*UserOnlyContext, error) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
context.Policy, err = policyv1beta1.NewForConfig(config)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
context.BatchV1, err = batchv1.NewForConfig(config)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
|
41
main.go
41
main.go
@ -11,14 +11,15 @@ import (
|
||||
publicSchema "github.com/rancher/types/apis/management.cattle.io/v3public/schema"
|
||||
projectSchema "github.com/rancher/types/apis/project.cattle.io/v3/schema"
|
||||
"github.com/rancher/types/generator"
|
||||
"k8s.io/api/apps/v1beta2"
|
||||
|
||||
appsv1 "k8s.io/api/apps/v1"
|
||||
scalingv2beta2 "k8s.io/api/autoscaling/v2beta2"
|
||||
batchv1 "k8s.io/api/batch/v1"
|
||||
batchv1beta1 "k8s.io/api/batch/v1beta1"
|
||||
|
||||
scalingv2beta2 "k8s.io/api/autoscaling/v2beta2"
|
||||
v1 "k8s.io/api/core/v1"
|
||||
extv1beta1 "k8s.io/api/extensions/v1beta1"
|
||||
knetworkingv1 "k8s.io/api/networking/v1"
|
||||
policyv1beta1 "k8s.io/api/policy/v1beta1"
|
||||
rbacv1 "k8s.io/api/rbac/v1"
|
||||
storagev1 "k8s.io/api/storage/v1"
|
||||
k8sschema "k8s.io/apimachinery/pkg/runtime/schema"
|
||||
@ -53,11 +54,11 @@ func main() {
|
||||
v1.Namespace{},
|
||||
v1.Event{},
|
||||
})
|
||||
generator.GenerateNativeTypes(v1beta2.SchemeGroupVersion, []interface{}{
|
||||
v1beta2.Deployment{},
|
||||
v1beta2.DaemonSet{},
|
||||
v1beta2.StatefulSet{},
|
||||
v1beta2.ReplicaSet{},
|
||||
generator.GenerateNativeTypes(appsv1.SchemeGroupVersion, []interface{}{
|
||||
appsv1.Deployment{},
|
||||
appsv1.DaemonSet{},
|
||||
appsv1.StatefulSet{},
|
||||
appsv1.ReplicaSet{},
|
||||
}, nil)
|
||||
generator.GenerateNativeTypes(rbacv1.SchemeGroupVersion, []interface{}{
|
||||
rbacv1.RoleBinding{},
|
||||
@ -79,13 +80,20 @@ func main() {
|
||||
[]interface{}{
|
||||
extv1beta1.Ingress{},
|
||||
},
|
||||
nil,
|
||||
)
|
||||
generator.GenerateNativeTypes(policyv1beta1.SchemeGroupVersion,
|
||||
nil,
|
||||
[]interface{}{
|
||||
extv1beta1.PodSecurityPolicy{},
|
||||
policyv1beta1.PodSecurityPolicy{},
|
||||
},
|
||||
)
|
||||
generator.GenerateNativeTypes(storagev1.SchemeGroupVersion,
|
||||
nil,
|
||||
[]interface{}{
|
||||
storagev1.StorageClass{},
|
||||
},
|
||||
)
|
||||
generator.GenerateNativeTypes(storagev1.SchemeGroupVersion, nil, []interface{}{
|
||||
storagev1.StorageClass{},
|
||||
})
|
||||
generator.GenerateNativeTypes(
|
||||
k8sschema.GroupVersion{Group: monitoringv1.Group, Version: monitoringv1.Version},
|
||||
[]interface{}{
|
||||
@ -94,23 +102,24 @@ func main() {
|
||||
monitoringv1.PrometheusRule{},
|
||||
monitoringv1.ServiceMonitor{},
|
||||
},
|
||||
[]interface{}{},
|
||||
nil,
|
||||
)
|
||||
generator.GenerateNativeTypes(scalingv2beta2.SchemeGroupVersion,
|
||||
[]interface{}{
|
||||
scalingv2beta2.HorizontalPodAutoscaler{},
|
||||
},
|
||||
[]interface{}{},
|
||||
nil,
|
||||
)
|
||||
generator.GenerateNativeTypes(istiov1alpha3.SchemeGroupVersion,
|
||||
[]interface{}{
|
||||
istiov1alpha3.VirtualService{},
|
||||
istiov1alpha3.DestinationRule{},
|
||||
},
|
||||
[]interface{}{},
|
||||
nil,
|
||||
)
|
||||
generator.GenerateNativeTypes(apiregistrationv1.SchemeGroupVersion,
|
||||
[]interface{}{}, []interface{}{
|
||||
nil,
|
||||
[]interface{}{
|
||||
apiregistrationv1.APIService{},
|
||||
},
|
||||
)
|
||||
|
Loading…
Reference in New Issue
Block a user