Documentation
¶
Index ¶
- Constants
- type NamedVulnerabilityReport
- type Repository
- func (r *Repository) GetCISKubeBenchReport(ctx context.Context, node string) (report *v1alpha1.CISKubeBenchReport, err error)
- func (r *Repository) GetConfigAuditReportByOwner(ctx context.Context, owner kube.Object) (*v1alpha1.ConfigAuditReport, error)
- func (r *Repository) GetControllerOf(ctx context.Context, controlee kube.Object) (*kube.Object, error)
- func (r *Repository) GetCustomResourceDefinitionByName(ctx context.Context, name string) (*apiextensionsv1.CustomResourceDefinition, error)
- func (r *Repository) GetKubeHunterReport(ctx context.Context) (report *v1alpha1.KubeHunterReport, err error)
- func (r *Repository) GetReplicaSetForDeployment(ctx context.Context, object kube.Object) (*kube.Object, error)
- func (r *Repository) GetVulnerabilitiesSummary(ctx context.Context, options kube.Object) (*v1alpha1.VulnerabilitySummary, error)
- func (r *Repository) GetVulnerabilityReportsByOwner(ctx context.Context, owner kube.Object) ([]NamedVulnerabilityReport, error)
Constants ¶
const (
ClusterKind = "Cluster"
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type NamedVulnerabilityReport ¶
type NamedVulnerabilityReport struct { Name string Report v1alpha1.VulnerabilityReport }
NamedVulnerabilityReport allows sorting VulnerabilityReports by container name.
type Repository ¶
type Repository struct {
// contains filtered or unexported fields
}
Repository defines methods for accessing Kubernetes object.
func NewRepository ¶
func NewRepository(client service.Dashboard) *Repository
NewRepository constructs new Kubernetes objects repository with the specified Kubernetes client provided by Octant extensions API.
func (*Repository) GetCISKubeBenchReport ¶
func (r *Repository) GetCISKubeBenchReport(ctx context.Context, node string) (report *v1alpha1.CISKubeBenchReport, err error)
func (*Repository) GetConfigAuditReportByOwner ¶
func (r *Repository) GetConfigAuditReportByOwner(ctx context.Context, owner kube.Object) (*v1alpha1.ConfigAuditReport, error)
func (*Repository) GetControllerOf ¶
func (r *Repository) GetControllerOf(ctx context.Context, controlee kube.Object) (*kube.Object, error)
GetControllerOf returns the controller Object for the specified controlee Object. Returns nil if there's no such controller.
func (*Repository) GetCustomResourceDefinitionByName ¶
func (r *Repository) GetCustomResourceDefinitionByName(ctx context.Context, name string) (*apiextensionsv1.CustomResourceDefinition, error)
func (*Repository) GetKubeHunterReport ¶
func (r *Repository) GetKubeHunterReport(ctx context.Context) (report *v1alpha1.KubeHunterReport, err error)
func (*Repository) GetReplicaSetForDeployment ¶
func (r *Repository) GetReplicaSetForDeployment(ctx context.Context, object kube.Object) (*kube.Object, error)
GetReplicaSetForDeployment returns the active ReplicaSet Object for the specified Deployment Object.
func (*Repository) GetVulnerabilitiesSummary ¶
func (r *Repository) GetVulnerabilitiesSummary(ctx context.Context, options kube.Object) (*v1alpha1.VulnerabilitySummary, error)
func (*Repository) GetVulnerabilityReportsByOwner ¶
func (r *Repository) GetVulnerabilityReportsByOwner(ctx context.Context, owner kube.Object) ([]NamedVulnerabilityReport, error)
GetVulnerabilityReportsByOwner returns VulnerabilityReports owned by the specified Kubernetes object. The reports are named after container names so we can sort them and render in predictable order.
Note: If there are no VulnerabilityReports which are owned by the specified Deployment, this method does an extra attempt to lookup the VulnerabilityReports owned by its active ReplicaSet. Similarly if there are no VulnerabilityReports owned by the specified Pod it will lookup VulnerabilityReports owned by the Pod's controller.