Skip to content

openreports/reports-api

Repository files navigation

OpenReports Logo

OpenReports API

The OpenReports API enables uniform reporting of results and findings from policy engines, scanners, or other tooling.

This repository contains the API specification and Custom Resource Definitions (CRDs).

Concepts

The API provides a ClusterReport and its namespaced variant Report.

Each Report contains a set of results and a summary. Each result contains attributes such as the source policy and rule name, severity, timestamp, and the resource.

Reference

Installing

Typically the Report API is installed and managed by a producer. However, if you want to install it independently, there are multiple ways to do so:

Manifest

kubectl apply -f https://github.com/openreports/reports-api/releases/download/<version>/install.yaml

Or install the latest dev manifests from the main branch:

kubectl apply -f https://raw.githubusercontent.com/openreports/reports-api/refs/heads/main/config/install.yaml

Helm

Using OCI:

helm install oci://ghcr.io/openreports/charts/openreports:<version>

Using the repository:

helm upgrade --install openreports \
     --repo https://openreports.github.io/reports-api \
     openreports

Demonstration

To try out the Report API in your cluster, you can follow the steps bellow:

  1. Add Report API CRDs to your cluster:
kubectl apply -f https://github.com/openreports/reports-api/releases/download/v0.1.0/install.yaml
  1. Create a sample policy report resource:
kubectl create -f https://raw.githubusercontent.com/openreports/reports-api/refs/heads/main/samples/sample-cis-k8s.yaml
  1. View policy report resources:
kubectl get reports

NAME                          PASS   FAIL   WARN   ERROR   SKIP   AGE
sample-cis-bench-api-server   8      2      0      0       0      4s

Implementations

The following is a list of projects that produce or consume policy reports:

(To add your project, please create a pull request.)

Report Producers

Report Consumers

Building

make build

Community, discussion, contribution, and support

You can reach the maintainers of this project at:

Code of conduct

Participation in the OpenReport community is governed by the CNCF Code of Conduct.

Historical References

See the Kubernetes Policy Working Group repository and the Policy Reports API proposal for background and details.

About

OpenReports API (Kubernetes CRD)

Topics

Resources

License

Stars

Watchers

Forks

Packages