-
Notifications
You must be signed in to change notification settings - Fork 21
feat: add support for .report root field in CRD plugin #322
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds support for parsing and exposing .report root fields from Kubernetes Custom Resource Definitions (CRDs) in the Steampipe plugin, enabling better visibility for policy and compliance checks.
- Extends the CRD plugin to parse and handle
.reportfields from custom resources - Adds dynamic column generation for report properties with proper naming conventions
- Updates the data extraction logic to include report data from both manifest files and deployed resources
|
Hello @JZacharie, Great to see the PR! Could you please address the review comments provided by Copilot? |
|
Hi @JZacharie, I’ve been reviewing the recent code changes — they look great overall, thank you for the work! However, while testing, I encountered the following issue: This seems to occur when the Would you mind taking a look when you get a chance? Attaching the sample CRD files below. apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
name: widgets.example.com # Fully qualified name of the CRD
spec:
group: example.com # API group
names:
plural: widgets # Plural name for the resource
singular: widget # Singular name
kind: Widget # PascalCase name used in YAML
shortNames:
- wdg # Optional shorthand
scope: Namespaced # Namespaced or Cluster-wide
versions:
- name: v1 # API version
served: true # Can be served by the API server
storage: true # Stored in etcd
schema:
openAPIV3Schema:
type: object
properties:
spec:
type: object
properties:
size:
type: string
enum:
- small
- medium
- largewidget.yaml: apiVersion: example.com/v1
kind: Widget
metadata:
name: my-widget
spec:
size: mediumThanks Again! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks ok for me;
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I reused your previous code for status, since it has the same constraint as report. This means the AI's purpose could be improved, but I didn’t fully focus on that part.
|
Hello @JZacharie, when you have a moment, could you please apply the workaround and update this PR according to the issue I mentioned above? |
|
Hi @JZacharie, have you had a chance to review the code changes again? |
|
This PR is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 30 days. |
This PR introduces support for the .report root field in the CRD plugin for Steampipe.
Changes:
Implemented parsing and handling of the .report root field in custom resource definitions.
Added logic to expose this data in the table schema.
Performed manual testing to validate expected behavior on sample CRDs.
This addition helps expose more structured insights from CRDs with .report fields, improving visibility for policy and compliance checks.