graph

package
v0.0.0-...-f79a1ae Latest Latest
Warning

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

Go to latest
Published: Apr 26, 2024 License: MIT Imports: 58 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewHandler

func NewHandler(config gengql.Config, log logrus.FieldLogger) (*handler.Server, error)

NewHandler creates and returns a new GraphQL handler with the given configuration

func ValidateDateInterval

func ValidateDateInterval(from, to scalar.Date) error

ValidateDateInterval will validate a from => to date interval used for querying costs.

Types

type ClusterInfo

type ClusterInfo struct {
	GCP bool
}

type ClusterList

type ClusterList map[string]ClusterInfo

func (ClusterList) GCPClusters

func (c ClusterList) GCPClusters() []string

func (ClusterList) Names

func (c ClusterList) Names() []string

type DailyCosts

type DailyCosts map[string]map[scalar.Date]float64

type DependencytrackClient

type DependencytrackClient interface {
	VulnerabilitySummary(ctx context.Context, app *dependencytrack.AppInstance) (*model.Vulnerability, error)
	GetVulnerabilities(ctx context.Context, apps []*dependencytrack.AppInstance, filters ...dependencytrack.Filter) ([]*model.Vulnerability, error)
}

type HookdClient

type HookdClient interface {
	Deployments(ctx context.Context, opts ...hookd.RequestOption) ([]hookd.Deploy, error)
	ChangeDeployKey(ctx context.Context, team string) (*hookd.DeployKey, error)
	DeployKey(ctx context.Context, team string) (*hookd.DeployKey, error)
}

type Metrics

type Metrics struct {
	// contains filtered or unexported fields
}

func NewMetrics

func NewMetrics(meter metric.Meter) (*Metrics, error)

func (*Metrics) ExtensionName

func (a *Metrics) ExtensionName() string

func (*Metrics) InterceptField

func (a *Metrics) InterceptField(ctx context.Context, next graphql.Resolver) (interface{}, error)

func (*Metrics) InterceptResponse

func (a *Metrics) InterceptResponse(ctx context.Context, next graphql.ResponseHandler) *graphql.Response

func (*Metrics) Validate

func (a *Metrics) Validate(_ graphql.ExecutableSchema) error

type Resolver

type Resolver struct {
	// contains filtered or unexported fields
}

func NewResolver

func NewResolver(
	hookdClient HookdClient,
	k8sClient *k8s.Client,
	dependencyTrackClient DependencytrackClient,
	resourceUsageClient resourceusage.Client,
	db database.Database,
	tenantDomain string,
	userSync chan<- uuid.UUID,
	auditLogger auditlogger.AuditLogger,
	clusters ClusterList,
	userSyncRuns *usersync.RunsHandler,
	pubsubTopic *pubsub.Topic,
	log logrus.FieldLogger,
	sqlInstanceClient *sqlinstance.Client,
) *Resolver

NewResolver creates a new GraphQL resolver with the given dependencies

func (*Resolver) App

func (r *Resolver) App() gengql.AppResolver

App returns gengql.AppResolver implementation.

func (*Resolver) DeployInfo

func (r *Resolver) DeployInfo() gengql.DeployInfoResolver

DeployInfo returns gengql.DeployInfoResolver implementation.

func (*Resolver) Env

func (r *Resolver) Env() gengql.EnvResolver

Env returns gengql.EnvResolver implementation.

func (*Resolver) GitHubRepository

func (r *Resolver) GitHubRepository() gengql.GitHubRepositoryResolver

GitHubRepository returns gengql.GitHubRepositoryResolver implementation.

func (*Resolver) Mutation

func (r *Resolver) Mutation() gengql.MutationResolver

Mutation returns gengql.MutationResolver implementation.

func (*Resolver) NaisJob

func (r *Resolver) NaisJob() gengql.NaisJobResolver

NaisJob returns gengql.NaisJobResolver implementation.

func (*Resolver) Query

func (r *Resolver) Query() gengql.QueryResolver

Query returns gengql.QueryResolver implementation.

func (*Resolver) Reconciler

func (r *Resolver) Reconciler() gengql.ReconcilerResolver

Reconciler returns gengql.ReconcilerResolver implementation.

func (*Resolver) Role

func (r *Resolver) Role() gengql.RoleResolver

Role returns gengql.RoleResolver implementation.

func (*Resolver) Secret

func (r *Resolver) Secret() gengql.SecretResolver

Secret returns gengql.SecretResolver implementation.

func (*Resolver) ServiceAccount

func (r *Resolver) ServiceAccount() gengql.ServiceAccountResolver

ServiceAccount returns gengql.ServiceAccountResolver implementation.

func (*Resolver) SqlInstance

func (r *Resolver) SqlInstance() gengql.SqlInstanceResolver

SqlInstance returns gengql.SqlInstanceResolver implementation.

func (*Resolver) Subscription

func (r *Resolver) Subscription() gengql.SubscriptionResolver

Subscription returns gengql.SubscriptionResolver implementation.

func (*Resolver) Team

func (r *Resolver) Team() gengql.TeamResolver

Team returns gengql.TeamResolver implementation.

func (*Resolver) TeamDeleteKey

func (r *Resolver) TeamDeleteKey() gengql.TeamDeleteKeyResolver

TeamDeleteKey returns gengql.TeamDeleteKeyResolver implementation.

func (*Resolver) TeamMember

func (r *Resolver) TeamMember() gengql.TeamMemberResolver

TeamMember returns gengql.TeamMemberResolver implementation.

func (*Resolver) TeamMemberReconciler

func (r *Resolver) TeamMemberReconciler() gengql.TeamMemberReconcilerResolver

TeamMemberReconciler returns gengql.TeamMemberReconcilerResolver implementation.

func (*Resolver) User

func (r *Resolver) User() gengql.UserResolver

User returns gengql.UserResolver implementation.

func (*Resolver) UserSyncRun

func (r *Resolver) UserSyncRun() gengql.UserSyncRunResolver

UserSyncRun returns gengql.UserSyncRunResolver implementation.

type SSE

type SSE struct{}

func (SSE) Do

func (SSE) Supports

func (t SSE) Supports(r *http.Request) bool

type SortedDailyCosts

type SortedDailyCosts map[string][]*model.CostEntry

func DailyCostsForTeamFromDatabaseRows

func DailyCostsForTeamFromDatabaseRows(from, to scalar.Date, rows []*gensql.Cost) (SortedDailyCosts, float64)

func DailyCostsForTeamPerEnvFromDatabaseRows

func DailyCostsForTeamPerEnvFromDatabaseRows(from, to scalar.Date, rows []*gensql.DailyEnvCostForTeamRow) (SortedDailyCosts, float64)

func DailyCostsFromDatabaseRows

func DailyCostsFromDatabaseRows(from, to scalar.Date, rows []*gensql.Cost) (SortedDailyCosts, float64)

DailyCostsFromDatabaseRows will convert a slice of cost rows from the database to a SortedDailyCosts map.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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