# CDEvents @ OpsMx ## Current Implementation at Opsmx: 1. We are currently consuming events from CDs such as ArgoCD and Spinnaker and we get build events from Jenkins and Github Actions 2. For Argo, Spinnaker and Github Actions, as there is no inherent support to send events in the CD events format, we do not use it for events 3. For Jenkins, even though we do have a plugin that sends data in the CD Events format, it does not support sending a custom payload and to a sink of our choice, so we are using a custom implementation of Cloud Events to publish the event ## Vision: 1. Current coverage of adapters available with CDEvents is limited, we intend to contribute towards improving it by implementing adapters. 2. SSD at Opsmx requires integration with various CD Platforms and Scanning Platforms (Snyk, Trivy etc), due to which there can a good use case for implementation of CDEvents. 3. Currently, SSD is only operating as a monitoring platform for events from various tools, which is one-way communication. SSD presents deployment firewall which presents the capability to interrupt the deployments based on security posture (derived from a set of policies). We intend to establish a cross-communication with CD Platforms to be able to interrupt the flow of pipelines in violation scenarios. ## Notes * SSD: Secure Software Delivery * [SSD](https://docs.opsmx.com/opsmx-secure-software-delivery-ssd-platform/ssd-overview) * Limited number of adapters * No implementation on the source side * Build * Signature of the artifact * ID of the build job * Source code identifier * GitHub plugin used to send custom events * Jenkins plugin: custom plugin OpsMx * Toolchain * Grouping of several scans * Webhook to trigger scans * OPA used to scan reports * Reference material * [event-provenance-registry](event-provenance-registryhttps://github.com/sassoftware/event-provenance-registry) * [fidelity user story](https://cd.foundation/blog/2023/02/07/launching-cdf-user-stories-first-up-fidelity-investments/https://github.com/sassoftware/event-provenance-registry) * Messaging: RabbitMQ * [CloudEvents SDK AMQP](https://github.com/cloudevents/sdk-go/blob/main/docs/protocol_implementations.md#protocol-implementations) * [CDEvents Go SDK CloudEvents binding](https://github.com/cdevents/sdk-go/blob/9ac1c5642fbe1a0812e2a1a929d7985d500cd0e3/pkg/api/bindings.go#L101) * [CDEvents Go SDK Readme](https://github.com/cdevents/sdk-go/tree/9ac1c5642fbe1a0812e2a1a929d7985d500cd0e3?tab=readme-ov-file#send-your-first-cdevent-as-cloudevent)