mirror of
https://github.com/SecurityBrewery/catalyst.git
synced 2025-12-17 20:53:04 +01:00
Release catalyst
This commit is contained in:
34
service/artifact.go
Normal file
34
service/artifact.go
Normal file
@@ -0,0 +1,34 @@
|
||||
package service
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/google/uuid"
|
||||
|
||||
"github.com/SecurityBrewery/catalyst/generated/models"
|
||||
"github.com/SecurityBrewery/catalyst/generated/restapi/api"
|
||||
"github.com/SecurityBrewery/catalyst/generated/restapi/operations/tickets"
|
||||
)
|
||||
|
||||
func (s *Service) RunArtifact(ctx context.Context, params *tickets.RunArtifactParams) *api.Response {
|
||||
artifact, err := s.database.ArtifactGet(ctx, params.ID, params.Name)
|
||||
if err != nil {
|
||||
return response(nil, err)
|
||||
}
|
||||
|
||||
jobID := uuid.NewString()
|
||||
origin := &models.Origin{ArtifactOrigin: &models.ArtifactOrigin{TicketId: params.ID, Artifact: params.Name}}
|
||||
return response(nil, s.bus.PublishJob(jobID, params.Automation, params.Name, &models.Context{Artifact: artifact}, origin))
|
||||
}
|
||||
|
||||
func (s *Service) EnrichArtifact(ctx context.Context, params *tickets.EnrichArtifactParams) *api.Response {
|
||||
return response(s.database.EnrichArtifact(ctx, params.ID, params.Name, params.Data))
|
||||
}
|
||||
|
||||
func (s *Service) SetArtifact(ctx context.Context, params *tickets.SetArtifactParams) *api.Response {
|
||||
return response(s.database.ArtifactUpdate(ctx, params.ID, params.Name, params.Artifact))
|
||||
}
|
||||
|
||||
func (s *Service) GetArtifact(ctx context.Context, params *tickets.GetArtifactParams) *api.Response {
|
||||
return response(s.database.ArtifactGet(ctx, params.ID, params.Name))
|
||||
}
|
||||
Reference in New Issue
Block a user