Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Service ¶
type Service interface {
// CRUD Operations
IntegrationFind(userID, integrationID int64) (*model.Integration, error)
IntegrationFindByID(integrationID int64) (*model.Integration, error)
IntegrationList(userID int64, opts *model.ListOptions) ([]*model.Integration, error)
IntegrationListAccessible(userID int64, orgIDs []int64, repoIDs []int64, opts *model.ListOptions) ([]*model.Integration, error)
IntegrationCreate(integration *model.Integration) error
IntegrationUpdate(integration *model.Integration) error
IntegrationDelete(userID, integrationID int64) error
// Access Control
CheckAccess(integration *model.Integration, userID int64, orgID int64, repoID int64) error
// Provider Operations
TestConnection(integration *model.Integration) error
GetProvider(ctx context.Context, integrationID int64, pipelineID int64) (integrations.Provider, error)
ReleasePipeline(pipelineID int64)
// Secret Fetching (high-level)
FetchSecret(ctx context.Context, ref *model.ExternalSecretRef, userID int64, orgID int64, repoID int64, pipelineID int64) (string, error)
FetchSecretsBatch(ctx context.Context, refs []*model.ExternalSecretRef, userID int64, orgID int64, repoID int64, pipelineID int64) (map[string]string, error)
// Lifecycle
Close()
}
Service defines a service for managing integrations and fetching external secrets.
func NewService ¶
func NewService(store model.IntegrationStore, factory integrations.ProviderFactory) Service
NewService creates a new integration service with the given store and provider factory.
type ServiceFactory ¶
type ServiceFactory func(store model.IntegrationStore, factory integrations.ProviderFactory) Service
ServiceFactory creates integration service instances.
Click to show internal directories.
Click to hide internal directories.