issue

package
v0.0.0-...-4500567 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 13, 2026 License: MIT Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

Functions

func ListIssues

func ListIssues(ctx context.Context, teamSlug slug.Slug, page *pagination.Pagination, orderBy *IssueOrder, filter *IssueFilter) (*pagination.Connection[Issue], error)

func NewContext

func NewContext(ctx context.Context, dbConn *pgxpool.Pool) context.Context

Types

type AivenIssueDetails

type AivenIssueDetails struct {
	Event string `json:"event"`
}

type ApplicationRestartLoopIssue

type ApplicationRestartLoopIssue struct {
	Base
	ApplicationRestartLoopIssueDetails
}

ApplicationRestartLoopIssue is an issue raised when an application is stuck in a restart loop.

func (ApplicationRestartLoopIssue) IsIssue

func (ApplicationRestartLoopIssue) IsIssue()

func (ApplicationRestartLoopIssue) IsNode

func (ApplicationRestartLoopIssue) IsNode()

type ApplicationRestartLoopIssueDetails

type ApplicationRestartLoopIssueDetails struct {
	RestartCount      int       `json:"restartCount"`
	LastExitReason    string    `json:"lastExitReason"`
	LastExitTimestamp time.Time `json:"lastExitTimestamp"`
}

ApplicationRestartLoopIssueDetails holds details about a restart loop issue.

type Base

type Base struct {
	ID              ident.Ident  `json:"id"`
	Severity        Severity     `json:"severity"`
	Message         string       `json:"message"`
	TeamSlug        slug.Slug    `json:"-"`
	EnvironmentName string       `json:"-"`
	ResourceName    string       `json:"-"`
	ResourceType    ResourceType `json:"-"`
}

type DeprecatedIngressIssue

type DeprecatedIngressIssue struct {
	Base
	Ingresses []string `json:"ingresses"`
}

func (DeprecatedIngressIssue) IsIssue

func (DeprecatedIngressIssue) IsIssue()

func (DeprecatedIngressIssue) IsNode

func (DeprecatedIngressIssue) IsNode()

type DeprecatedIngressIssueDetails

type DeprecatedIngressIssueDetails struct {
	Ingresses []string `json:"ingresses"`
}

type DeprecatedRegistryIssue

type DeprecatedRegistryIssue struct {
	Base
}

func (DeprecatedRegistryIssue) IsIssue

func (DeprecatedRegistryIssue) IsIssue()

func (DeprecatedRegistryIssue) IsNode

func (DeprecatedRegistryIssue) IsNode()

type ExternalIngressCriticalVulnerabilityIssue

type ExternalIngressCriticalVulnerabilityIssue struct {
	Base
	ExternalIngressCriticalVulnerabilityIssueDetails
}

func (ExternalIngressCriticalVulnerabilityIssue) IsIssue

func (ExternalIngressCriticalVulnerabilityIssue) IsNode

type ExternalIngressCriticalVulnerabilityIssueDetails

type ExternalIngressCriticalVulnerabilityIssueDetails struct {
	CvssScore float64  `json:"cvssScore"`
	Ingresses []string `json:"ingresses"`
}

type FailedSynchronizationIssue

type FailedSynchronizationIssue struct {
	Base
}

func (FailedSynchronizationIssue) IsIssue

func (FailedSynchronizationIssue) IsIssue()

func (FailedSynchronizationIssue) IsNode

func (FailedSynchronizationIssue) IsNode()

type InvalidSpecIssue

type InvalidSpecIssue struct {
	Base
}

func (InvalidSpecIssue) IsIssue

func (InvalidSpecIssue) IsIssue()

func (InvalidSpecIssue) IsNode

func (InvalidSpecIssue) IsNode()

type Issue

type Issue interface {
	model.Node
	IsIssue()
}

func GetByIdent

func GetByIdent(ctx context.Context, id ident.Ident) (Issue, error)

type IssueConnection

type IssueConnection = pagination.Connection[Issue]

type IssueEdge

type IssueEdge = pagination.Edge[Issue]

type IssueFilter

type IssueFilter struct {
	// Filter by resource name.
	ResourceName *string `json:"resourceName,omitempty"`
	// Filter by resource type.
	ResourceType *ResourceType `json:"resourceType,omitempty"`
	// Filter by environment.
	Environments []string `json:"environments,omitempty"`

	ResourceIssueFilter
}

type IssueOrder

type IssueOrder struct {
	// Order by this field.
	Field IssueOrderField `json:"field"`
	// Order direction.
	Direction model.OrderDirection `json:"direction"`
}

func (*IssueOrder) String

func (o *IssueOrder) String() string

type IssueOrderField

type IssueOrderField string
const (
	// Order by resource name.
	IssueOrderFieldResourceName IssueOrderField = "RESOURCE_NAME"
	// Order by severity.
	IssueOrderFieldSeverity IssueOrderField = "SEVERITY"
	// Order by environment.
	IssueOrderFieldEnvironment IssueOrderField = "ENVIRONMENT"
	// Order by resource type.
	IssueOrderFieldResourceType IssueOrderField = "RESOURCE_TYPE"
	// Order by issue type.
	IssueOrderFieldIssueType IssueOrderField = "ISSUE_TYPE"
)

func (IssueOrderField) IsValid

func (e IssueOrderField) IsValid() bool

func (IssueOrderField) MarshalGQL

func (e IssueOrderField) MarshalGQL(w io.Writer)

func (IssueOrderField) String

func (e IssueOrderField) String() string

func (*IssueOrderField) UnmarshalGQL

func (e *IssueOrderField) UnmarshalGQL(v any) error

type IssueType

type IssueType string
const (
	IssueTypeOpenSearch                           IssueType = "OPENSEARCH"
	IssueTypeValkey                               IssueType = "VALKEY"
	IssueTypeSqlInstanceState                     IssueType = "SQLINSTANCE_STATE"
	IssueTypeSqlInstanceVersion                   IssueType = "SQLINSTANCE_VERSION"
	IssueTypeDeprecatedIngress                    IssueType = "DEPRECATED_INGRESS"
	IssueTypeDeprecatedRegistry                   IssueType = "DEPRECATED_REGISTRY"
	IssueTypeNoRunningInstances                   IssueType = "NO_RUNNING_INSTANCES"
	IssueTypeLastRunFailed                        IssueType = "LAST_RUN_FAILED"
	IssueTypeFailedSynchronization                IssueType = "FAILED_SYNCHRONIZATION"
	IssueTypeInvalidSpec                          IssueType = "INVALID_SPEC"
	IssueTypeVulnerableImage                      IssueType = "VULNERABLE_IMAGE"
	IssueTypeMissingSBOM                          IssueType = "MISSING_SBOM"
	IssueTypeExternalIngressCriticalVulnerability IssueType = "EXTERNAL_INGRESS_CRITICAL_VULNERABILITY"
	IssueTypeUnleashReleaseChannel                IssueType = "UNLEASH_RELEASE_CHANNEL"
	IssueTypeApplicationRestartLoop               IssueType = "APPLICATION_RESTART_LOOP"
)

func (IssueType) IsValid

func (e IssueType) IsValid() bool

func (IssueType) MarshalGQL

func (e IssueType) MarshalGQL(w io.Writer)

func (IssueType) String

func (e IssueType) String() string

func (*IssueType) UnmarshalGQL

func (e *IssueType) UnmarshalGQL(v any) error

type LastRunFailedIssue

type LastRunFailedIssue struct {
	Base
}

func (LastRunFailedIssue) IsIssue

func (LastRunFailedIssue) IsIssue()

func (LastRunFailedIssue) IsNode

func (LastRunFailedIssue) IsNode()

type MissingSbomIssue

type MissingSbomIssue struct {
	Base
}

func (MissingSbomIssue) IsIssue

func (MissingSbomIssue) IsIssue()

func (MissingSbomIssue) IsNode

func (MissingSbomIssue) IsNode()

type NoRunningInstancesIssue

type NoRunningInstancesIssue struct {
	Base
}

func (NoRunningInstancesIssue) IsIssue

func (NoRunningInstancesIssue) IsIssue()

func (NoRunningInstancesIssue) IsNode

func (NoRunningInstancesIssue) IsNode()

type OpenSearchIssue

type OpenSearchIssue struct {
	Base
	Event string `json:"event"`
}

func (OpenSearchIssue) IsIssue

func (OpenSearchIssue) IsIssue()

func (OpenSearchIssue) IsNode

func (OpenSearchIssue) IsNode()

type ResourceIssueFilter

type ResourceIssueFilter struct {
	// Filter by severity.
	Severity *Severity `json:"severity,omitempty"`
	// Filter by issue type.
	IssueType *IssueType `json:"issueType,omitempty"`
}

type ResourceType

type ResourceType string
const (
	ResourceTypeOpensearch  ResourceType = "OPENSEARCH"
	ResourceTypeValkey      ResourceType = "VALKEY"
	ResourceTypeSQLInstance ResourceType = "SQLINSTANCE"
	ResourceTypeApplication ResourceType = "APPLICATION"
	ResourceTypeJob         ResourceType = "JOB"
	ResourceTypeUnleash     ResourceType = "UNLEASH"
)

func (ResourceType) IsValid

func (e ResourceType) IsValid() bool

func (ResourceType) MarshalGQL

func (e ResourceType) MarshalGQL(w io.Writer)

func (ResourceType) String

func (e ResourceType) String() string

func (*ResourceType) UnmarshalGQL

func (e *ResourceType) UnmarshalGQL(v any) error

type SQLInstanceIssueDetails

type SQLInstanceIssueDetails struct {
	State   string `json:"state"`
	Message string `json:"message"`
}

type Severity

type Severity string
const (
	SeverityCritical Severity = "CRITICAL"
	SeverityWarning  Severity = "WARNING"
	SeverityTodo     Severity = "TODO"
)

func (Severity) IsValid

func (e Severity) IsValid() bool

func (Severity) MarshalGQL

func (e Severity) MarshalGQL(w io.Writer)

func (Severity) String

func (e Severity) String() string

func (*Severity) UnmarshalGQL

func (e *Severity) UnmarshalGQL(v any) error

type SqlInstanceStateIssue

type SqlInstanceStateIssue struct {
	Base
	State sqlinstance.SQLInstanceState `json:"state"`
}

func (SqlInstanceStateIssue) IsIssue

func (SqlInstanceStateIssue) IsIssue()

func (SqlInstanceStateIssue) IsNode

func (SqlInstanceStateIssue) IsNode()

type SqlInstanceVersionIssue

type SqlInstanceVersionIssue struct {
	Base
}

func (SqlInstanceVersionIssue) IsIssue

func (SqlInstanceVersionIssue) IsIssue()

func (SqlInstanceVersionIssue) IsNode

func (SqlInstanceVersionIssue) IsNode()

type UnleashReleaseChannelIssue

type UnleashReleaseChannelIssue struct {
	Base
	UnleashReleaseChannelIssueDetails
}

func (UnleashReleaseChannelIssue) IsIssue

func (UnleashReleaseChannelIssue) IsIssue()

func (UnleashReleaseChannelIssue) IsNode

func (UnleashReleaseChannelIssue) IsNode()

type UnleashReleaseChannelIssueDetails

type UnleashReleaseChannelIssueDetails struct {
	ChannelName         string `json:"channelName"`
	MajorVersion        int    `json:"majorVersion"`
	CurrentMajorVersion int    `json:"currentMajorVersion"`
}

type ValkeyIssue

type ValkeyIssue struct {
	Base
	Event string `json:"event"`
}

func (ValkeyIssue) IsIssue

func (ValkeyIssue) IsIssue()

func (ValkeyIssue) IsNode

func (ValkeyIssue) IsNode()

type VulnerableImageIssue

type VulnerableImageIssue struct {
	Base
	VulnerableImageIssueDetails
}

func (VulnerableImageIssue) IsIssue

func (VulnerableImageIssue) IsIssue()

func (VulnerableImageIssue) IsNode

func (VulnerableImageIssue) IsNode()

type VulnerableImageIssueDetails

type VulnerableImageIssueDetails struct {
	RiskScore int `json:"riskScore"`
	Critical  int `json:"critical"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL