Documentation ¶
Index ¶
- Variables
- func NewCASBackendRepo(data *Data, logger log.Logger) biz.CASBackendRepo
- func NewCASMappingRepo(data *Data, cbRepo biz.CASBackendRepo, logger log.Logger) biz.CASMappingRepo
- func NewIntegrationAttachmentRepo(data *Data, logger log.Logger) biz.IntegrationAttachmentRepo
- func NewIntegrationRepo(data *Data, logger log.Logger) biz.IntegrationRepo
- func NewMembershipRepo(data *Data, logger log.Logger) biz.MembershipRepo
- func NewOrgInvitation(data *Data, logger log.Logger) biz.OrgInvitationRepo
- func NewOrgMetricsRepo(data *Data, l log.Logger) biz.OrgMetricsRepo
- func NewOrganizationRepo(data *Data, logger log.Logger) biz.OrganizationRepo
- func NewReferrerRepo(data *Data, wfRepo biz.WorkflowRepo, logger log.Logger) biz.ReferrerRepo
- func NewRobotAccountRepo(data *Data, logger log.Logger) biz.RobotAccountRepo
- func NewUserRepo(data *Data, logger log.Logger) biz.UserRepo
- func NewWorkflowContractRepo(data *Data, logger log.Logger) biz.WorkflowContractRepo
- func NewWorkflowRepo(data *Data, logger log.Logger) biz.WorkflowRepo
- func NewWorkflowRunRepo(data *Data, logger log.Logger) biz.WorkflowRunRepo
- type CASBackendRepo
- func (r *CASBackendRepo) Create(ctx context.Context, opts *biz.CASBackendCreateOpts) (*biz.CASBackend, error)
- func (r *CASBackendRepo) Delete(ctx context.Context, id uuid.UUID) error
- func (r *CASBackendRepo) FindByID(ctx context.Context, id uuid.UUID) (*biz.CASBackend, error)
- func (r *CASBackendRepo) FindByIDInOrg(ctx context.Context, orgID, id uuid.UUID) (*biz.CASBackend, error)
- func (r *CASBackendRepo) FindDefaultBackend(ctx context.Context, orgID uuid.UUID) (*biz.CASBackend, error)
- func (r *CASBackendRepo) FindFallbackBackend(ctx context.Context, orgID uuid.UUID) (*biz.CASBackend, error)
- func (r *CASBackendRepo) List(ctx context.Context, orgID uuid.UUID) ([]*biz.CASBackend, error)
- func (r *CASBackendRepo) SoftDelete(ctx context.Context, id uuid.UUID) error
- func (r *CASBackendRepo) Update(ctx context.Context, opts *biz.CASBackendUpdateOpts) (*biz.CASBackend, error)
- func (r *CASBackendRepo) UpdateValidationStatus(ctx context.Context, id uuid.UUID, status biz.CASBackendValidationStatus) error
- type CASMappingRepo
- type Data
- type IntegrationAttachmentRepo
- func (r *IntegrationAttachmentRepo) Create(ctx context.Context, integrationID, workflowID uuid.UUID, config []byte) (*biz.IntegrationAttachment, error)
- func (r *IntegrationAttachmentRepo) FindByIDInOrg(ctx context.Context, orgID, id uuid.UUID) (*biz.IntegrationAttachment, error)
- func (r *IntegrationAttachmentRepo) List(ctx context.Context, orgID, workflowID uuid.UUID) ([]*biz.IntegrationAttachment, error)
- func (r *IntegrationAttachmentRepo) SoftDelete(ctx context.Context, id uuid.UUID) error
- type IntegrationRepo
- func (r *IntegrationRepo) Create(ctx context.Context, opts *biz.IntegrationCreateOpts) (*biz.Integration, error)
- func (r *IntegrationRepo) FindByIDInOrg(ctx context.Context, orgID, id uuid.UUID) (*biz.Integration, error)
- func (r *IntegrationRepo) List(ctx context.Context, orgID uuid.UUID) ([]*biz.Integration, error)
- func (r *IntegrationRepo) SoftDelete(ctx context.Context, id uuid.UUID) error
- type MembershipRepo
- func (r *MembershipRepo) Create(ctx context.Context, orgID, userID uuid.UUID, current bool) (*biz.Membership, error)
- func (r *MembershipRepo) Delete(ctx context.Context, id uuid.UUID) error
- func (r *MembershipRepo) FindByIDInUser(ctx context.Context, userID, membershipID uuid.UUID) (*biz.Membership, error)
- func (r *MembershipRepo) FindByOrg(ctx context.Context, orgID uuid.UUID) ([]*biz.Membership, error)
- func (r *MembershipRepo) FindByUser(ctx context.Context, userID uuid.UUID) ([]*biz.Membership, error)
- func (r *MembershipRepo) SetCurrent(ctx context.Context, membershipID uuid.UUID) (*biz.Membership, error)
- type OrgInvitation
- func (r *OrgInvitation) ChangeStatus(ctx context.Context, id uuid.UUID, status biz.OrgInvitationStatus) error
- func (r *OrgInvitation) Create(ctx context.Context, orgID, senderID uuid.UUID, receiverEmail string) (*biz.OrgInvitation, error)
- func (r *OrgInvitation) FindByID(ctx context.Context, id uuid.UUID) (*biz.OrgInvitation, error)
- func (r *OrgInvitation) ListBySender(ctx context.Context, userID uuid.UUID) ([]*biz.OrgInvitation, error)
- func (r *OrgInvitation) PendingInvitation(ctx context.Context, orgID uuid.UUID, receiverEmail string) (*biz.OrgInvitation, error)
- func (r *OrgInvitation) PendingInvitations(ctx context.Context, receiverEmail string) ([]*biz.OrgInvitation, error)
- func (r *OrgInvitation) SoftDelete(ctx context.Context, id uuid.UUID) error
- type OrgMetricsRepo
- func (repo *OrgMetricsRepo) RunsByRunnerTypeTotal(ctx context.Context, orgID uuid.UUID, tw time.Duration) (map[string]int32, error)
- func (repo *OrgMetricsRepo) RunsByStatusTotal(ctx context.Context, orgID uuid.UUID, tw time.Duration) (map[string]int32, error)
- func (repo *OrgMetricsRepo) RunsTotal(ctx context.Context, orgID uuid.UUID, tw time.Duration) (int32, error)
- func (repo *OrgMetricsRepo) TopWorkflowsByRunsCount(ctx context.Context, orgID uuid.UUID, numWorkflows int, tw time.Duration) ([]*biz.TopWorkflowsByRunsCountItem, error)
- type OrganizationRepo
- type ReferrerRepo
- type RobotAccountRepo
- func (r *RobotAccountRepo) Create(ctx context.Context, name string, workflowID uuid.UUID) (*biz.RobotAccount, error)
- func (r *RobotAccountRepo) FindByID(ctx context.Context, id uuid.UUID) (*biz.RobotAccount, error)
- func (r *RobotAccountRepo) List(ctx context.Context, workflowID uuid.UUID, includeRevoked bool) ([]*biz.RobotAccount, error)
- func (r *RobotAccountRepo) Revoke(ctx context.Context, orgID, id uuid.UUID) error
- type WorkflowContractRepo
- func (r *WorkflowContractRepo) Create(ctx context.Context, opts *biz.ContractCreateOpts) (*biz.WorkflowContract, error)
- func (r *WorkflowContractRepo) Describe(ctx context.Context, orgID, contractID uuid.UUID, revision int) (*biz.WorkflowContractWithVersion, error)
- func (r *WorkflowContractRepo) FindByIDInOrg(ctx context.Context, orgID, contractID uuid.UUID) (*biz.WorkflowContract, error)
- func (r *WorkflowContractRepo) FindVersionByID(ctx context.Context, versionID uuid.UUID) (*biz.WorkflowContractVersion, error)
- func (r *WorkflowContractRepo) List(ctx context.Context, orgID uuid.UUID) ([]*biz.WorkflowContract, error)
- func (r *WorkflowContractRepo) SoftDelete(ctx context.Context, id uuid.UUID) error
- func (r *WorkflowContractRepo) Update(ctx context.Context, opts *biz.ContractUpdateOpts) (*biz.WorkflowContractWithVersion, error)
- type WorkflowRepo
- func (r *WorkflowRepo) Create(ctx context.Context, opts *biz.WorkflowCreateOpts) (*biz.Workflow, error)
- func (r *WorkflowRepo) FindByID(ctx context.Context, id uuid.UUID) (*biz.Workflow, error)
- func (r *WorkflowRepo) GetOrgScoped(ctx context.Context, orgID, workflowID uuid.UUID) (*biz.Workflow, error)
- func (r *WorkflowRepo) IncRunsCounter(ctx context.Context, workflowID uuid.UUID) error
- func (r *WorkflowRepo) List(ctx context.Context, orgID uuid.UUID) ([]*biz.Workflow, error)
- func (r *WorkflowRepo) SoftDelete(ctx context.Context, id uuid.UUID) error
- func (r *WorkflowRepo) Update(ctx context.Context, id uuid.UUID, opts *biz.WorkflowUpdateOpts) (*biz.Workflow, error)
- type WorkflowRunRepo
- func (r *WorkflowRunRepo) Create(ctx context.Context, workflowID, robotaccountID, schemaVersionID uuid.UUID, ...) (*biz.WorkflowRun, error)
- func (r *WorkflowRunRepo) Expire(ctx context.Context, id uuid.UUID) error
- func (r *WorkflowRunRepo) FindByAttestationDigest(ctx context.Context, digest string) (*biz.WorkflowRun, error)
- func (r *WorkflowRunRepo) FindByID(ctx context.Context, id uuid.UUID) (*biz.WorkflowRun, error)
- func (r *WorkflowRunRepo) FindByIDInOrg(ctx context.Context, orgID, id uuid.UUID) (*biz.WorkflowRun, error)
- func (r *WorkflowRunRepo) List(ctx context.Context, orgID, workflowID uuid.UUID, p *pagination.Options) (result []*biz.WorkflowRun, cursor string, err error)
- func (r *WorkflowRunRepo) ListNotFinishedOlderThan(ctx context.Context, olderThan time.Time) ([]*biz.WorkflowRun, error)
- func (r *WorkflowRunRepo) MarkAsFinished(ctx context.Context, id uuid.UUID, status biz.WorkflowRunStatus, reason string) error
- func (r *WorkflowRunRepo) SaveAttestation(ctx context.Context, id uuid.UUID, att *dsse.Envelope, digest string) error
Constants ¶
This section is empty.
Variables ¶
var ProviderSet = wire.NewSet( NewData, NewWorkflowRepo, NewUserRepo, NewRobotAccountRepo, NewWorkflowRunRepo, NewOrganizationRepo, NewWorkflowContractRepo, NewCASBackendRepo, NewOrgMetricsRepo, NewIntegrationRepo, NewIntegrationAttachmentRepo, NewCASMappingRepo, NewMembershipRepo, NewOrgInvitation, NewReferrerRepo, )
ProviderSet is data providers.
Functions ¶
func NewCASBackendRepo ¶ added in v0.14.0
func NewCASBackendRepo(data *Data, logger log.Logger) biz.CASBackendRepo
func NewCASMappingRepo ¶ added in v0.17.0
func NewCASMappingRepo(data *Data, cbRepo biz.CASBackendRepo, logger log.Logger) biz.CASMappingRepo
func NewIntegrationAttachmentRepo ¶
func NewIntegrationAttachmentRepo(data *Data, logger log.Logger) biz.IntegrationAttachmentRepo
func NewIntegrationRepo ¶
func NewIntegrationRepo(data *Data, logger log.Logger) biz.IntegrationRepo
func NewMembershipRepo ¶
func NewMembershipRepo(data *Data, logger log.Logger) biz.MembershipRepo
func NewOrgInvitation ¶ added in v0.25.0
func NewOrgInvitation(data *Data, logger log.Logger) biz.OrgInvitationRepo
func NewOrgMetricsRepo ¶
func NewOrgMetricsRepo(data *Data, l log.Logger) biz.OrgMetricsRepo
func NewOrganizationRepo ¶
func NewOrganizationRepo(data *Data, logger log.Logger) biz.OrganizationRepo
func NewReferrerRepo ¶ added in v0.30.0
func NewReferrerRepo(data *Data, wfRepo biz.WorkflowRepo, logger log.Logger) biz.ReferrerRepo
func NewRobotAccountRepo ¶
func NewRobotAccountRepo(data *Data, logger log.Logger) biz.RobotAccountRepo
func NewWorkflowContractRepo ¶
func NewWorkflowContractRepo(data *Data, logger log.Logger) biz.WorkflowContractRepo
func NewWorkflowRepo ¶
func NewWorkflowRepo(data *Data, logger log.Logger) biz.WorkflowRepo
func NewWorkflowRunRepo ¶
func NewWorkflowRunRepo(data *Data, logger log.Logger) biz.WorkflowRunRepo
Types ¶
type CASBackendRepo ¶ added in v0.14.0
type CASBackendRepo struct {
// contains filtered or unexported fields
}
func (*CASBackendRepo) Create ¶ added in v0.14.0
func (r *CASBackendRepo) Create(ctx context.Context, opts *biz.CASBackendCreateOpts) (*biz.CASBackend, error)
Create creates a new CAS backend in the given organization If it's set as default, it will unset the previous default backend
func (*CASBackendRepo) FindByID ¶ added in v0.14.0
func (r *CASBackendRepo) FindByID(ctx context.Context, id uuid.UUID) (*biz.CASBackend, error)
FindByID finds a CAS backend by ID If not found, returns nil and no error
func (*CASBackendRepo) FindByIDInOrg ¶ added in v0.14.0
func (r *CASBackendRepo) FindByIDInOrg(ctx context.Context, orgID, id uuid.UUID) (*biz.CASBackend, error)
FindByIDInOrg finds a CAS backend by ID in the given organization. If not found, returns nil and no error
func (*CASBackendRepo) FindDefaultBackend ¶ added in v0.14.0
func (r *CASBackendRepo) FindDefaultBackend(ctx context.Context, orgID uuid.UUID) (*biz.CASBackend, error)
FindDefaultBackend finds the CAS backend that's set as default for the given organization
func (*CASBackendRepo) FindFallbackBackend ¶ added in v0.14.0
func (r *CASBackendRepo) FindFallbackBackend(ctx context.Context, orgID uuid.UUID) (*biz.CASBackend, error)
FindFallbackBackend finds the CAS backend that's set as fallback for the given organization
func (*CASBackendRepo) List ¶ added in v0.14.0
func (r *CASBackendRepo) List(ctx context.Context, orgID uuid.UUID) ([]*biz.CASBackend, error)
func (*CASBackendRepo) SoftDelete ¶ added in v0.14.0
Set deleted at instead of actually deleting the backend
func (*CASBackendRepo) Update ¶ added in v0.14.0
func (r *CASBackendRepo) Update(ctx context.Context, opts *biz.CASBackendUpdateOpts) (*biz.CASBackend, error)
func (*CASBackendRepo) UpdateValidationStatus ¶ added in v0.14.0
func (r *CASBackendRepo) UpdateValidationStatus(ctx context.Context, id uuid.UUID, status biz.CASBackendValidationStatus) error
UpdateValidationStatus updates the validation status of an OCI repository
type CASMappingRepo ¶ added in v0.17.0
type CASMappingRepo struct {
// contains filtered or unexported fields
}
func (*CASMappingRepo) Create ¶ added in v0.17.0
func (r *CASMappingRepo) Create(ctx context.Context, digest string, casBackendID, workflowRunID uuid.UUID) (*biz.CASMapping, error)
func (*CASMappingRepo) FindByDigest ¶ added in v0.17.0
func (r *CASMappingRepo) FindByDigest(ctx context.Context, digest string) ([]*biz.CASMapping, error)
type Data ¶
type Data struct {
// contains filtered or unexported fields
}
Data .
func (*Data) SchemaLoad ¶ added in v0.13.0
Load DB schema NOTE: this is different than running migrations this method is used to load the schema into the DB for TESTING!
type IntegrationAttachmentRepo ¶
type IntegrationAttachmentRepo struct {
// contains filtered or unexported fields
}
func (*IntegrationAttachmentRepo) Create ¶
func (r *IntegrationAttachmentRepo) Create(ctx context.Context, integrationID, workflowID uuid.UUID, config []byte) (*biz.IntegrationAttachment, error)
func (*IntegrationAttachmentRepo) FindByIDInOrg ¶
func (r *IntegrationAttachmentRepo) FindByIDInOrg(ctx context.Context, orgID, id uuid.UUID) (*biz.IntegrationAttachment, error)
func (*IntegrationAttachmentRepo) List ¶
func (r *IntegrationAttachmentRepo) List(ctx context.Context, orgID, workflowID uuid.UUID) ([]*biz.IntegrationAttachment, error)
func (*IntegrationAttachmentRepo) SoftDelete ¶
type IntegrationRepo ¶
type IntegrationRepo struct {
// contains filtered or unexported fields
}
func (*IntegrationRepo) Create ¶
func (r *IntegrationRepo) Create(ctx context.Context, opts *biz.IntegrationCreateOpts) (*biz.Integration, error)
func (*IntegrationRepo) FindByIDInOrg ¶
func (r *IntegrationRepo) FindByIDInOrg(ctx context.Context, orgID, id uuid.UUID) (*biz.Integration, error)
func (*IntegrationRepo) List ¶
func (r *IntegrationRepo) List(ctx context.Context, orgID uuid.UUID) ([]*biz.Integration, error)
func (*IntegrationRepo) SoftDelete ¶
type MembershipRepo ¶
type MembershipRepo struct {
// contains filtered or unexported fields
}
func (*MembershipRepo) Create ¶
func (r *MembershipRepo) Create(ctx context.Context, orgID, userID uuid.UUID, current bool) (*biz.Membership, error)
func (*MembershipRepo) FindByIDInUser ¶
func (r *MembershipRepo) FindByIDInUser(ctx context.Context, userID, membershipID uuid.UUID) (*biz.Membership, error)
func (*MembershipRepo) FindByOrg ¶
func (r *MembershipRepo) FindByOrg(ctx context.Context, orgID uuid.UUID) ([]*biz.Membership, error)
FindByOrg finds all memberships for a given organization
func (*MembershipRepo) FindByUser ¶
func (r *MembershipRepo) FindByUser(ctx context.Context, userID uuid.UUID) ([]*biz.Membership, error)
func (*MembershipRepo) SetCurrent ¶
func (r *MembershipRepo) SetCurrent(ctx context.Context, membershipID uuid.UUID) (*biz.Membership, error)
type OrgInvitation ¶ added in v0.25.0
type OrgInvitation struct {
// contains filtered or unexported fields
}
func (*OrgInvitation) ChangeStatus ¶ added in v0.25.0
func (r *OrgInvitation) ChangeStatus(ctx context.Context, id uuid.UUID, status biz.OrgInvitationStatus) error
func (*OrgInvitation) Create ¶ added in v0.25.0
func (r *OrgInvitation) Create(ctx context.Context, orgID, senderID uuid.UUID, receiverEmail string) (*biz.OrgInvitation, error)
func (*OrgInvitation) FindByID ¶ added in v0.25.0
func (r *OrgInvitation) FindByID(ctx context.Context, id uuid.UUID) (*biz.OrgInvitation, error)
func (*OrgInvitation) ListBySender ¶ added in v0.25.0
func (r *OrgInvitation) ListBySender(ctx context.Context, userID uuid.UUID) ([]*biz.OrgInvitation, error)
func (*OrgInvitation) PendingInvitation ¶ added in v0.25.0
func (r *OrgInvitation) PendingInvitation(ctx context.Context, orgID uuid.UUID, receiverEmail string) (*biz.OrgInvitation, error)
func (*OrgInvitation) PendingInvitations ¶ added in v0.25.0
func (r *OrgInvitation) PendingInvitations(ctx context.Context, receiverEmail string) ([]*biz.OrgInvitation, error)
func (*OrgInvitation) SoftDelete ¶ added in v0.25.0
type OrgMetricsRepo ¶
type OrgMetricsRepo struct {
// contains filtered or unexported fields
}
func (*OrgMetricsRepo) RunsByRunnerTypeTotal ¶
func (*OrgMetricsRepo) RunsByStatusTotal ¶
func (*OrgMetricsRepo) TopWorkflowsByRunsCount ¶
type OrganizationRepo ¶
type OrganizationRepo struct {
// contains filtered or unexported fields
}
func (*OrganizationRepo) Create ¶
func (r *OrganizationRepo) Create(ctx context.Context, name string) (*biz.Organization, error)
func (*OrganizationRepo) FindByID ¶
func (r *OrganizationRepo) FindByID(ctx context.Context, id uuid.UUID) (*biz.Organization, error)
type ReferrerRepo ¶ added in v0.30.0
type ReferrerRepo struct {
// contains filtered or unexported fields
}
func (*ReferrerRepo) GetFromRoot ¶ added in v0.30.0
func (r *ReferrerRepo) GetFromRoot(ctx context.Context, digest string, orgIDs []uuid.UUID, filters ...biz.GetFromRootFilter) (*biz.StoredReferrer, error)
type RobotAccountRepo ¶
type RobotAccountRepo struct {
// contains filtered or unexported fields
}
func (*RobotAccountRepo) Create ¶
func (r *RobotAccountRepo) Create(ctx context.Context, name string, workflowID uuid.UUID) (*biz.RobotAccount, error)
func (*RobotAccountRepo) FindByID ¶
func (r *RobotAccountRepo) FindByID(ctx context.Context, id uuid.UUID) (*biz.RobotAccount, error)
type WorkflowContractRepo ¶
type WorkflowContractRepo struct {
// contains filtered or unexported fields
}
func (*WorkflowContractRepo) Create ¶
func (r *WorkflowContractRepo) Create(ctx context.Context, opts *biz.ContractCreateOpts) (*biz.WorkflowContract, error)
func (*WorkflowContractRepo) Describe ¶
func (r *WorkflowContractRepo) Describe(ctx context.Context, orgID, contractID uuid.UUID, revision int) (*biz.WorkflowContractWithVersion, error)
func (*WorkflowContractRepo) FindByIDInOrg ¶
func (r *WorkflowContractRepo) FindByIDInOrg(ctx context.Context, orgID, contractID uuid.UUID) (*biz.WorkflowContract, error)
func (*WorkflowContractRepo) FindVersionByID ¶
func (r *WorkflowContractRepo) FindVersionByID(ctx context.Context, versionID uuid.UUID) (*biz.WorkflowContractVersion, error)
func (*WorkflowContractRepo) List ¶
func (r *WorkflowContractRepo) List(ctx context.Context, orgID uuid.UUID) ([]*biz.WorkflowContract, error)
func (*WorkflowContractRepo) SoftDelete ¶
func (*WorkflowContractRepo) Update ¶
func (r *WorkflowContractRepo) Update(ctx context.Context, opts *biz.ContractUpdateOpts) (*biz.WorkflowContractWithVersion, error)
Update will add a new version of the contract. NOTE: ContractVersions are imutable
type WorkflowRepo ¶
type WorkflowRepo struct {
// contains filtered or unexported fields
}
func (*WorkflowRepo) Create ¶
func (r *WorkflowRepo) Create(ctx context.Context, opts *biz.WorkflowCreateOpts) (*biz.Workflow, error)
func (*WorkflowRepo) GetOrgScoped ¶
func (r *WorkflowRepo) GetOrgScoped(ctx context.Context, orgID, workflowID uuid.UUID) (*biz.Workflow, error)
Get a workflow making sure it belongs to a given org
func (*WorkflowRepo) IncRunsCounter ¶
func (*WorkflowRepo) SoftDelete ¶
type WorkflowRunRepo ¶
type WorkflowRunRepo struct {
// contains filtered or unexported fields
}
func (*WorkflowRunRepo) FindByAttestationDigest ¶ added in v0.18.0
func (r *WorkflowRunRepo) FindByAttestationDigest(ctx context.Context, digest string) (*biz.WorkflowRun, error)
func (*WorkflowRunRepo) FindByID ¶
func (r *WorkflowRunRepo) FindByID(ctx context.Context, id uuid.UUID) (*biz.WorkflowRun, error)
func (*WorkflowRunRepo) FindByIDInOrg ¶
func (r *WorkflowRunRepo) FindByIDInOrg(ctx context.Context, orgID, id uuid.UUID) (*biz.WorkflowRun, error)
func (*WorkflowRunRepo) List ¶
func (r *WorkflowRunRepo) List(ctx context.Context, orgID, workflowID uuid.UUID, p *pagination.Options) (result []*biz.WorkflowRun, cursor string, err error)
List the runs in an organization, optionally filtered out by workflow
func (*WorkflowRunRepo) ListNotFinishedOlderThan ¶
func (r *WorkflowRunRepo) ListNotFinishedOlderThan(ctx context.Context, olderThan time.Time) ([]*biz.WorkflowRun, error)
func (*WorkflowRunRepo) MarkAsFinished ¶
func (r *WorkflowRunRepo) MarkAsFinished(ctx context.Context, id uuid.UUID, status biz.WorkflowRunStatus, reason string) error