diff --git a/pkg/eventshub/103-pod.yaml b/pkg/eventshub/103-pod.yaml index b49e07681..5eaf4bd49 100644 --- a/pkg/eventshub/103-pod.yaml +++ b/pkg/eventshub/103-pod.yaml @@ -26,7 +26,7 @@ metadata: {{ end }} {{ end }} spec: - serviceAccountName: "{{ .namespace }}" + serviceAccountName: "{{ .name }}" restartPolicy: "OnFailure" {{ if .podSecurityContext }} securityContext: diff --git a/pkg/eventshub/eventshub_test.go b/pkg/eventshub/eventshub_test.go index 8bedfafe3..be4252d79 100644 --- a/pkg/eventshub/eventshub_test.go +++ b/pkg/eventshub/eventshub_test.go @@ -75,7 +75,7 @@ func Example() { // labels: // app: eventshub-hubhub // spec: - // serviceAccountName: "example" + // serviceAccountName: "hubhub" // restartPolicy: "OnFailure" // containers: // - name: eventshub @@ -152,7 +152,7 @@ func ExampleIstioAnnotation() { // sidecar.istio.io/inject: "true" // sidecar.istio.io/rewriteAppHTTPProbers: "true" // spec: - // serviceAccountName: "example" + // serviceAccountName: "hubhub" // restartPolicy: "OnFailure" // containers: // - name: eventshub @@ -223,7 +223,7 @@ func ExampleNoReadiness() { // labels: // app: eventshub-hubhub // spec: - // serviceAccountName: "example" + // serviceAccountName: "hubhub" // restartPolicy: "OnFailure" // containers: // - name: eventshub diff --git a/pkg/eventshub/rbac/100-sa.yaml b/pkg/eventshub/rbac/100-sa.yaml index b94996272..f86b52394 100644 --- a/pkg/eventshub/rbac/100-sa.yaml +++ b/pkg/eventshub/rbac/100-sa.yaml @@ -15,5 +15,5 @@ apiVersion: v1 kind: ServiceAccount metadata: - name: {{ .namespace }} + name: {{ .name }} namespace: {{ .namespace }} diff --git a/pkg/eventshub/rbac/101-rbac.yaml b/pkg/eventshub/rbac/101-rbac.yaml index 5839e77b2..dffe43896 100644 --- a/pkg/eventshub/rbac/101-rbac.yaml +++ b/pkg/eventshub/rbac/101-rbac.yaml @@ -15,7 +15,7 @@ apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: - name: {{ .namespace }} + name: {{ .name }} namespace: {{ .namespace }} rules: - apiGroups: [ "" ] @@ -35,13 +35,13 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: - name: {{ .namespace }} + name: {{ .name }} namespace: {{ .namespace }} roleRef: apiGroup: rbac.authorization.k8s.io kind: Role - name: {{ .namespace }} + name: {{ .name }} subjects: - kind: ServiceAccount - name: {{ .namespace }} + name: {{ .name }} namespace: {{ .namespace }} diff --git a/pkg/eventshub/rbac/rbac.go b/pkg/eventshub/rbac/rbac.go index 099b73a83..de8a2cfbd 100644 --- a/pkg/eventshub/rbac/rbac.go +++ b/pkg/eventshub/rbac/rbac.go @@ -31,9 +31,9 @@ var templates embed.FS // Install creates the necessary ServiceAccount, Role, RoleBinding for the eventshub. // The resources are named according to the current namespace defined in the environment. -func Install() feature.StepFn { +func Install(cfg map[string]interface{}) feature.StepFn { return func(ctx context.Context, t feature.T) { - if _, err := manifest.InstallYamlFS(ctx, templates, map[string]interface{}{}); err != nil && !apierrors.IsAlreadyExists(err) { + if _, err := manifest.InstallYamlFS(ctx, templates, cfg); err != nil && !apierrors.IsAlreadyExists(err) { t.Fatal(err) } } diff --git a/pkg/eventshub/rbac/rbac_test.go b/pkg/eventshub/rbac/rbac_test.go index d1dcc773d..d8e06d604 100644 --- a/pkg/eventshub/rbac/rbac_test.go +++ b/pkg/eventshub/rbac/rbac_test.go @@ -31,6 +31,7 @@ func Example() { ctx := testlog.NewContext() files, err := manifest.ExecuteYAML(ctx, templates, nil, map[string]interface{}{ + "name": "examplen", "namespace": "example", }) if err != nil { @@ -42,13 +43,13 @@ func Example() { // apiVersion: v1 // kind: ServiceAccount // metadata: - // name: example + // name: examplen // namespace: example // --- // apiVersion: rbac.authorization.k8s.io/v1 // kind: Role // metadata: - // name: example + // name: examplen // namespace: example // rules: // - apiGroups: [ "" ] @@ -66,14 +67,14 @@ func Example() { // apiVersion: rbac.authorization.k8s.io/v1 // kind: RoleBinding // metadata: - // name: example + // name: examplen // namespace: example // roleRef: // apiGroup: rbac.authorization.k8s.io // kind: Role - // name: example + // name: examplen // subjects: // - kind: ServiceAccount - // name: example + // name: examplen // namespace: example } diff --git a/pkg/eventshub/resources.go b/pkg/eventshub/resources.go index fdf97692c..b2ba7dfd7 100644 --- a/pkg/eventshub/resources.go +++ b/pkg/eventshub/resources.go @@ -67,9 +67,6 @@ func Install(name string, options ...EventsHubOption) feature.StepFn { eventListener := k8s.EventListenerFromContext(ctx) registerEventsHubStore(ctx, eventListener, name, namespace) - // Install ServiceAccount, Role, RoleBinding - eventshubrbac.Install()(ctx, t) - isReceiver := strings.Contains(envs["EVENT_GENERATORS"], "receiver") cfg := map[string]interface{}{ @@ -79,6 +76,9 @@ func Install(name string, options ...EventsHubOption) feature.StepFn { "withReadiness": isReceiver, } + // Install ServiceAccount, Role, RoleBinding + eventshubrbac.Install(cfg)(ctx, t) + if ic := environment.GetIstioConfig(ctx); ic.Enabled { manifest.WithIstioPodAnnotations(cfg) }