database

package
v0.11.1 Latest Latest
Warning

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

Go to latest
Published: Oct 27, 2023 License: AGPL-3.0 Imports: 32 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Name                     = "catalyst"
	TicketCollectionName     = "tickets"
	TemplateCollectionName   = "templates"
	PlaybookCollectionName   = "playbooks"
	AutomationCollectionName = "automations"
	UserDataCollectionName   = "userdata"
	UserCollectionName       = "users"
	TicketTypeCollectionName = "tickettypes"
	JobCollectionName        = "jobs"
	SettingsCollectionName   = "settings"
	DashboardCollectionName  = "dashboards"

	TicketArtifactsGraphName     = "Graph"
	RelatedTicketsCollectionName = "related"
)

Variables

This section is empty.

Functions

func SetupDB

func SetupDB(ctx context.Context, client driver.Client, dbName string) (driver.Database, error)

Types

type Config

type Config struct {
	Host     string
	User     string
	Password string
	Name     string
}

type Database

type Database struct {
	*busdb.BusDatabase
	Index *index.Index

	Hooks *hooks.Hooks
	// contains filtered or unexported fields
}

func New

func New(ctx context.Context, index *index.Index, bus *bus.Bus, hooks *hooks.Hooks, config *Config) (*Database, error)

func (*Database) AddArtifact

func (db *Database) AddArtifact(ctx context.Context, id int64, artifact *model.Artifact) (*model.TicketWithTickets, error)

func (*Database) AddComment

func (db *Database) AddComment(ctx context.Context, id int64, comment *model.CommentForm) (*model.TicketWithTickets, error)

func (*Database) AddFile added in v0.8.0

func (db *Database) AddFile(ctx context.Context, id int64, file *model.File) (*model.TicketWithTickets, error)

func (*Database) AddTicketPlaybook

func (db *Database) AddTicketPlaybook(ctx context.Context, id int64, playbookTemplate *model.PlaybookTemplateForm) (*model.TicketWithTickets, error)

func (*Database) ArtifactGet

func (db *Database) ArtifactGet(ctx context.Context, id int64, name string) (*model.Artifact, error)

func (*Database) ArtifactUpdate

func (db *Database) ArtifactUpdate(ctx context.Context, id int64, name string, artifact *model.Artifact) (*model.TicketWithTickets, error)

func (*Database) AutomationCreate

func (db *Database) AutomationCreate(ctx context.Context, automation *model.AutomationForm) (*model.AutomationResponse, error)

func (*Database) AutomationDelete

func (db *Database) AutomationDelete(ctx context.Context, id string) error

func (*Database) AutomationGet

func (db *Database) AutomationGet(ctx context.Context, id string) (*model.AutomationResponse, error)

func (*Database) AutomationList

func (db *Database) AutomationList(ctx context.Context) ([]*model.AutomationResponse, error)

func (*Database) AutomationUpdate

func (db *Database) AutomationUpdate(ctx context.Context, id string, automation *model.AutomationForm) (*model.AutomationResponse, error)

func (*Database) DashboardCreate added in v0.9.0

func (db *Database) DashboardCreate(ctx context.Context, dashboard *model.Dashboard) (*model.DashboardResponse, error)

func (*Database) DashboardDelete added in v0.9.0

func (db *Database) DashboardDelete(ctx context.Context, id string) error

func (*Database) DashboardGet added in v0.9.0

func (db *Database) DashboardGet(ctx context.Context, id string) (*model.DashboardResponse, error)

func (*Database) DashboardList added in v0.9.0

func (db *Database) DashboardList(ctx context.Context) ([]*model.DashboardResponse, error)

func (*Database) DashboardUpdate added in v0.9.0

func (db *Database) DashboardUpdate(ctx context.Context, id string, dashboard *model.Dashboard) (*model.DashboardResponse, error)

func (*Database) EnrichArtifact

func (db *Database) EnrichArtifact(ctx context.Context, id int64, name string, enrichmentForm *model.EnrichmentForm) (*model.TicketWithTickets, error)

func (*Database) IndexRebuild

func (db *Database) IndexRebuild(ctx context.Context) error

func (*Database) JobComplete

func (db *Database) JobComplete(ctx context.Context, id string, out any) error

func (*Database) JobCreate

func (db *Database) JobCreate(ctx context.Context, id string, job *model.JobForm) (*model.JobResponse, error)

func (*Database) JobDelete

func (db *Database) JobDelete(ctx context.Context, id string) error

func (*Database) JobGet

func (db *Database) JobGet(ctx context.Context, id string) (*model.JobResponse, error)

func (*Database) JobList

func (db *Database) JobList(ctx context.Context) ([]*model.JobResponse, error)

func (*Database) JobLogAppend

func (db *Database) JobLogAppend(ctx context.Context, id string, logLine string) error

func (*Database) JobUpdate

func (db *Database) JobUpdate(ctx context.Context, id string, job *model.JobUpdate) (*model.JobResponse, error)

func (*Database) PlaybookCreate

func (db *Database) PlaybookCreate(ctx context.Context, playbook *model.PlaybookTemplateForm) (*model.PlaybookTemplateResponse, error)

func (*Database) PlaybookDelete

func (db *Database) PlaybookDelete(ctx context.Context, id string) error

func (*Database) PlaybookGet

func (db *Database) PlaybookGet(ctx context.Context, id string) (*model.PlaybookTemplateResponse, error)

func (*Database) PlaybookList

func (db *Database) PlaybookList(ctx context.Context) ([]*model.PlaybookTemplateResponse, error)

func (*Database) PlaybookUpdate

func (db *Database) PlaybookUpdate(ctx context.Context, id string, playbook *model.PlaybookTemplateForm) (*model.PlaybookTemplateResponse, error)

func (*Database) RelatedBatchCreate

func (db *Database) RelatedBatchCreate(ctx context.Context, edges []*driver.EdgeDocument) error

func (*Database) RelatedCreate

func (db *Database) RelatedCreate(ctx context.Context, id, id2 int64) error

func (*Database) RelatedRemove

func (db *Database) RelatedRemove(ctx context.Context, id, id2 int64) error

func (*Database) RemoveArtifact

func (db *Database) RemoveArtifact(ctx context.Context, id int64, name string) (*model.TicketWithTickets, error)

func (*Database) RemoveComment

func (db *Database) RemoveComment(ctx context.Context, id int64, commentID int64) (*model.TicketWithTickets, error)

func (*Database) RemoveTicketPlaybook

func (db *Database) RemoveTicketPlaybook(ctx context.Context, id int64, playbookID string) (*model.TicketWithTickets, error)

func (*Database) SaveSettings added in v0.9.0

func (db *Database) SaveSettings(ctx context.Context, settings *model.Settings) (*model.Settings, error)

func (*Database) SetReferences

func (db *Database) SetReferences(ctx context.Context, id int64, references []*model.Reference) (*model.TicketWithTickets, error)

func (*Database) SetTemplate

func (db *Database) SetTemplate(ctx context.Context, id int64, schema string) (*model.TicketWithTickets, error)

func (*Database) Settings added in v0.9.0

func (db *Database) Settings(ctx context.Context) (*model.Settings, error)

func (*Database) Statistics

func (db *Database) Statistics(ctx context.Context) (*model.Statistics, error)

func (*Database) TaskComplete

func (db *Database) TaskComplete(ctx context.Context, id int64, playbookID string, taskID string, data any) (*model.TicketWithTickets, error)

func (*Database) TaskGet

func (*Database) TaskList

func (db *Database) TaskList(ctx context.Context) ([]*model.TaskWithContext, error)

func (*Database) TaskRun

func (db *Database) TaskRun(ctx context.Context, id int64, playbookID string, taskID string) error

func (*Database) TaskUpdateData added in v0.8.0

func (db *Database) TaskUpdateData(ctx context.Context, id int64, playbookID string, taskID string, data map[string]any) (*model.TicketWithTickets, error)

func (*Database) TaskUpdateOwner added in v0.8.0

func (db *Database) TaskUpdateOwner(ctx context.Context, id int64, playbookID string, taskID string, owner string) (*model.TicketWithTickets, error)

func (*Database) TemplateCreate

func (db *Database) TemplateCreate(ctx context.Context, template *model.TicketTemplateForm) (*model.TicketTemplateResponse, error)

func (*Database) TemplateDelete

func (db *Database) TemplateDelete(ctx context.Context, id string) error

func (*Database) TemplateGet

func (db *Database) TemplateGet(ctx context.Context, id string) (*model.TicketTemplateResponse, error)

func (*Database) TemplateList

func (db *Database) TemplateList(ctx context.Context) ([]*model.TicketTemplateResponse, error)

func (*Database) TemplateUpdate

func (db *Database) TemplateUpdate(ctx context.Context, id string, template *model.TicketTemplateForm) (*model.TicketTemplateResponse, error)

func (*Database) TicketBatchCreate

func (db *Database) TicketBatchCreate(ctx context.Context, ticketForms []*model.TicketForm) ([]*model.TicketResponse, error)

func (*Database) TicketCount

func (db *Database) TicketCount(ctx context.Context, typequery, filterquery string, bindVars map[string]any) (int, error)

func (*Database) TicketDelete

func (db *Database) TicketDelete(ctx context.Context, ticketID int64) error

func (*Database) TicketGet

func (db *Database) TicketGet(ctx context.Context, ticketID int64) (*model.TicketWithTickets, error)

func (*Database) TicketList

func (db *Database) TicketList(ctx context.Context, ticketType string, query string, sorts []string, desc []bool, offset, count int64) (*model.TicketList, error)

func (*Database) TicketTypeCreate

func (db *Database) TicketTypeCreate(ctx context.Context, tickettype *model.TicketTypeForm) (*model.TicketTypeResponse, error)

func (*Database) TicketTypeDelete

func (db *Database) TicketTypeDelete(ctx context.Context, id string) error

func (*Database) TicketTypeGet

func (db *Database) TicketTypeGet(ctx context.Context, id string) (*model.TicketTypeResponse, error)

func (*Database) TicketTypeList

func (db *Database) TicketTypeList(ctx context.Context) ([]*model.TicketTypeResponse, error)

func (*Database) TicketTypeUpdate

func (db *Database) TicketTypeUpdate(ctx context.Context, id string, tickettype *model.TicketTypeForm) (*model.TicketTypeResponse, error)

func (*Database) TicketUpdate

func (db *Database) TicketUpdate(ctx context.Context, ticketID int64, ticket *model.Ticket) (*model.TicketWithTickets, error)

func (*Database) Truncate

func (db *Database) Truncate(ctx context.Context)

func (*Database) UserAPIKeyByHash added in v0.10.0

func (db *Database) UserAPIKeyByHash(ctx context.Context, sha256 string) (*model.UserResponse, error)

func (*Database) UserByIDAndPassword added in v0.10.0

func (db *Database) UserByIDAndPassword(ctx context.Context, id, password string) (*model.UserResponse, error)

func (*Database) UserCreate

func (db *Database) UserCreate(ctx context.Context, newUser *model.UserForm) (*model.NewUserResponse, error)

func (*Database) UserCreateSetupAPIKey

func (db *Database) UserCreateSetupAPIKey(ctx context.Context, key string) (*model.UserResponse, error)

func (*Database) UserDataCreate

func (db *Database) UserDataCreate(ctx context.Context, id string, userdata *model.UserData) error

func (*Database) UserDataGet

func (db *Database) UserDataGet(ctx context.Context, id string) (*model.UserDataResponse, error)

func (*Database) UserDataGetOrCreate

func (db *Database) UserDataGetOrCreate(ctx context.Context, id string, newUserData *model.UserData) (*model.UserDataResponse, error)

func (*Database) UserDataList

func (db *Database) UserDataList(ctx context.Context) ([]*model.UserDataResponse, error)

func (*Database) UserDataUpdate

func (db *Database) UserDataUpdate(ctx context.Context, id string, userdata *model.UserData) (*model.UserDataResponse, error)

func (*Database) UserDelete

func (db *Database) UserDelete(ctx context.Context, id string) error

func (*Database) UserGet

func (db *Database) UserGet(ctx context.Context, id string) (*model.UserResponse, error)

func (*Database) UserGetOrCreate

func (db *Database) UserGetOrCreate(ctx context.Context, newUser *model.UserForm) (*model.UserResponse, error)

func (*Database) UserList

func (db *Database) UserList(ctx context.Context) ([]*model.UserResponse, error)

func (*Database) UserUpdate

func (db *Database) UserUpdate(ctx context.Context, id string, user *model.UserForm) (*model.UserResponse, error)

func (*Database) WidgetData added in v0.9.0

func (db *Database) WidgetData(ctx context.Context, aggregation string, filter *string) (map[string]any, error)

type PlaybookYAML

type PlaybookYAML struct {
	Name  string              `yaml:"name"`
	Tasks map[string]TaskYAML `yaml:"tasks"`
}

type TaskYAML

type TaskYAML struct {
	Name       string            `yaml:"name"`
	Type       string            `yaml:"type"`
	Schema     any               `yaml:"schema"`
	Automation string            `yaml:"automation"`
	Payload    map[string]string `yaml:"payload"`
	Next       map[string]string `yaml:"next"`
	Join       bool              `yaml:"join"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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