J'essaie de travailler avec Istio à partir de Go, et nous utilisons Kubernetes et le code go-client d'Istio.
Le problème que je rencontre est que je ne peux pas spécifier ObjectMeta
o TypeMeta
dans mon Istio- ServiceRole
objet. Je peux seulement spécifier rules
qui se trouvent à l'intérieur de la spec
.
Vous pouvez voir ci-dessous ce que j'ai réussi à faire fonctionner :
import (
v1alpha1 "istio.io/api/rbac/v1alpha1"
)
func getDefaultServiceRole(app nais.Application) *v1alpha1.ServiceRole {
return &v1alpha1.ServiceRole{
Rules: []*v1alpha1.AccessRule{
{
Ports: []int32{2},
},
},
}
}
Ce que je voudrais faire, c'est que ce code fonctionne :
func getDefaultServiceRole(app *nais.Application) *v1alpha1.ServiceRole {
return &v1alpha1.ServiceRole{
TypeMeta: metav1.TypeMeta{
Kind: "ServiceRole",
APIVersion: "v1alpha1",
},
ObjectMeta: metav1.ObjectMeta{
Name: app.Name,
Namespace: app.Namespace,
},
Spec: v1alpha1.ServiceRole{
Rules: []*v1alpha1.AccessRule{
{
Ports: []int32{2},
},
},
},
},
}
Quelqu'un peut-il m'indiquer la bonne direction ?