@knative-extensions/plugin-knative-event-mesh-backend v1.16.0
Knative Event Mesh plugin
The Event Mesh plugin is a Backstage plugin that allows you to view and manage Knative Eventing resources.
The Backstage plugin talks to a special backend that runs in the Kubernetes cluster and communicates with the Kubernetes API server.
Installation
Install the backend and the relevant configuration in the Kubernetes cluster
kubectl apply -f https://github.com/knative-extensions/backstage-plugins/releases/download/v0.1.0/eventmesh.yaml
In your Backstage directory, run the following command to install the plugin:
yarn workspace backend add @knative-extensions/plugin-knative-event-mesh-backend
Configuration
NOTE: The backend needs to be accessible from the Backstage instance. If you are running the backend without exposing it, you can use
kubectl port-forward
to forward the port of the backend service to your local machine.kubectl port-forward -n knative-eventing svc/eventmesh-backend 8080:8080
The plugin needs to be configured to talk to the backend. It can be configured in the app-config.yaml
file of the
Backstage instance and allows configuration of one or multiple providers.
Use a knativeEventMesh
marker to start configuring the app-config.yaml
file of Backstage:
catalog:
providers:
knativeEventMesh:
dev:
baseUrl: 'http://localhost:8080' # URL of the backend installed in the cluster
schedule: # optional; same options as in TaskScheduleDefinition
# supports cron, ISO duration, "human duration" as used in code
frequency: { minutes: 1 }
# supports ISO duration, "human duration" as used in code
timeout: { minutes: 1 }
Configure the scheduler for the entity provider. Add the following code to packages/backend/src/plugins/catalog.ts
file:
In file packages/backend/src/plugins/catalog.ts
:
import {KnativeEventMeshProvider} from '@knative-extensions/plugin-knative-event-mesh-backend';
export default async function createPlugin(
env:PluginEnvironment,
):Promise<Router> {
const builder = await CatalogBuilder.create(env);
/* ... other processors and/or providers ... */
// ADD THIS
builder.addEntityProvider(
KnativeEventMeshProvider.fromConfig(env.config, {
logger: env.logger,
scheduler: env.scheduler,
}),
);
/* ... other processors and/or providers ... */
const {processingEngine, router} = await builder.build();
await processingEngine.start();
return router;
}
NOTE: If you have made any changes to the schedule in the
app-config.yaml
file, then restart to apply the changes.
Troubleshooting
When you start your Backstage application, you can see some log lines as follows:
[1] 2024-01-04T09:38:08.707Z knative-event-mesh-backend info Found 1 knative event mesh provider configs with ids: dev type=plugin
Usage
The plugin will register a few entities in the Backstage catalog.
Screenshots:
8 months ago
8 months ago
8 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
1 year ago
1 year ago
1 year ago
1 year ago
11 months ago
11 months ago
1 year ago
12 months ago
11 months ago
11 months ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago