Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var Module = fx.Module( "repository", fx.Provide( NewGroup, NewProjects, NewSession, NewUser, NewVerificationCode, NewServiceAccount, NewDatabase, NewCapsule, NewStorage, NewSecret, ), )
Functions ¶
This section is empty.
Types ¶
type Capsule ¶
type Capsule interface { Create(ctx context.Context, c *capsule.Capsule) error Get(ctx context.Context, capsuleID uuid.UUID) (*capsule.Capsule, error) GetByName(ctx context.Context, name string) (*capsule.Capsule, error) List(ctx context.Context, pagination *model.Pagination) (iterator.Iterator[*capsule.Capsule], int64, error) Update(ctx context.Context, p *capsule.Capsule) error Delete(ctx context.Context, capsuleID uuid.UUID) error CreateBuild(ctx context.Context, capsuleID uuid.UUID, b *capsule.Build) error DeleteBuild(ctx context.Context, capsuleID uuid.UUID, buildID string) error ListBuilds(ctx context.Context, pagination *model.Pagination, capsuleID uuid.UUID) (iterator.Iterator[*capsule.Build], uint64, error) GetBuild(ctx context.Context, capsuleID uuid.UUID, buildID string) (*capsule.Build, error) CreateRollout(ctx context.Context, capsuleID uuid.UUID, rc *capsule.RolloutConfig, rs *rollout.Status) (uint64, error) ListRollouts(ctx context.Context, pagination *model.Pagination, capsuleID uuid.UUID) (iterator.Iterator[*capsule.Rollout], uint64, error) UpdateRolloutStatus(ctx context.Context, capsuleID uuid.UUID, rolloutID uint64, version uint64, rs *rollout.Status) error GetRollout(ctx context.Context, capsuleID uuid.UUID, rolloutID uint64) (*capsule.RolloutConfig, *rollout.Status, uint64, error) ActiveRollouts(ctx context.Context, pagination *model.Pagination) (iterator.Iterator[repo_capsule.ActiveRollout], error) CreateEvent(ctx context.Context, capsuleID uuid.UUID, e *capsule.Event) error ListEvents(ctx context.Context, pagination *model.Pagination, capsuleID uuid.UUID, rolloutID uint64) (iterator.Iterator[*capsule.Event], uint64, error) CreateMetrics(ctx context.Context, metrics *capsule.InstanceMetrics) error ListMetrics(ctx context.Context, pagination *model.Pagination) (iterator.Iterator[*capsule.InstanceMetrics], error) GetMetrics(ctx context.Context, pagination *model.Pagination, capsuleID uuid.UUID) (iterator.Iterator[*capsule.InstanceMetrics], error) GetInstanceMetrics(ctx context.Context, pagination *model.Pagination, capsuleID uuid.UUID, instanceID string) (iterator.Iterator[*capsule.InstanceMetrics], error) BuildIndexes(ctx context.Context) error }
func NewCapsule ¶
type Database ¶
type Database interface { Create(ctx context.Context, database *database.Database) (*database.Database, error) Delete(ctx context.Context, databaseID uuid.UUID) error GetByName(ctx context.Context, name string) (*database.Database, error) Get(ctx context.Context, databaseID uuid.UUID) (*database.Database, error) List(ctx context.Context, pagination *model.Pagination) (iterator.Iterator[*database.Database], uint64, error) Update(ctx context.Context, database *database.Database) (*database.Database, error) BuildIndexes(ctx context.Context) error }
func NewDatabase ¶
type Group ¶
type Group interface { Create(ctx context.Context, group *group.Group) (*group.Group, error) Delete(ctx context.Context, groupID uuid.UUID) error DeleteAll(ctx context.Context) error Get(ctx context.Context, groupID uuid.UUID) (*group.Group, error) GetByName(ctx context.Context, groupName string) (*group.Group, error) List(ctx context.Context, pagination *model.Pagination, search string) (iterator.Iterator[*group.Group], uint64, error) Count(ctx context.Context) (int64, error) Update(ctx context.Context, group *group.Group) (*group.Group, error) RemoveMember(ctx context.Context, userID, groupID uuid.UUID) error RemoveMemberFromAll(ctx context.Context, userID uuid.UUID) error AddMembers(ctx context.Context, userIDs []uuid.UUID, groupID uuid.UUID) error ListGroupsForUser(ctx context.Context, userID uuid.UUID, pagination *model.Pagination) (iterator.Iterator[uuid.UUID], uint64, error) ListMembers(ctx context.Context, groupID uuid.UUID, pagination *model.Pagination) (iterator.Iterator[uuid.UUID], uint64, error) CountMembers(ctx context.Context, groupID uuid.UUID) (uint64, error) BuildIndexes(ctx context.Context) error }
type Project ¶
type Project interface { Create(ctx context.Context, p *project.Project) (*project.Project, error) Get(ctx context.Context, projectID uuid.UUID) (*project.Project, error) List(ctx context.Context, pagination *model.Pagination, exclude []uuid.UUID) (iterator.Iterator[*project.Project], int64, error) Update(ctx context.Context, p *project.Project) (*project.Project, error) Delete(ctx context.Context, projectID uuid.UUID) error SetSettings(ctx context.Context, projectID uuid.UUID, settingsName string, data []byte) error GetSettings(ctx context.Context, projectID uuid.UUID, settingsName string) ([]byte, error) BuildIndexes(ctx context.Context) error }
func NewProjects ¶
type Secret ¶
type ServiceAccount ¶
type ServiceAccount interface { Create(ctx context.Context, serviceAccountID uuid.UUID, c *service_account.ServiceAccount) error List(ctx context.Context) (iterator.Iterator[*service_account.Entry], error) Get(ctx context.Context, serviceAccountID uuid.UUID) (uuid.UUID, *service_account.ServiceAccount, error) GetClientSecret(ctx context.Context, serviceAccountID uuid.UUID) (*model.HashingInstance, error) UpdateClientSecret(ctx context.Context, serviceAccountID uuid.UUID, pw *model.HashingInstance) error Delete(ctx context.Context, serviceAccountID uuid.UUID) error BuildIndexes(ctx context.Context) error }
func NewServiceAccount ¶
func NewServiceAccount(p params) (ServiceAccount, error)
type Session ¶
type Session interface { Create(ctx context.Context, userID, sessionID uuid.UUID, s *user.Session) error Update(ctx context.Context, userID, sessionID uuid.UUID, s *user.Session) error List(ctx context.Context, userID uuid.UUID) (iterator.Iterator[*user.SessionEntry], error) Get(ctx context.Context, userID, sessionID uuid.UUID) (*user.Session, error) Delete(ctx context.Context, userID, sessionID uuid.UUID) error BuildIndexes(ctx context.Context) error }
func NewSession ¶
type Storage ¶
type Storage interface { Create(ctx context.Context, providerID, secretID uuid.UUID, provider *storage.Provider) (*storage.Provider, error) Delete(ctx context.Context, providerID uuid.UUID) error Get(ctx context.Context, providerID uuid.UUID) (*storage.Provider, uuid.UUID, error) List(ctx context.Context, pagination *model.Pagination) (iterator.Iterator[*storage.ProviderEntry], uint64, error) Update(ctx context.Context, providerID uuid.UUID, provider *storage.Provider) (*storage.Provider, error) LookupByBucket(ctx context.Context, bucket string) (uuid.UUID, *storage.Provider, uuid.UUID, error) Lookup(ctx context.Context, name string) (uuid.UUID, *storage.Provider, uuid.UUID, error) BuildIndexes(ctx context.Context) error }
func NewStorage ¶
type User ¶
type User interface { Create(ctx context.Context, user *user.User) (*user.User, error) Update(ctx context.Context, update *user.User) (*user.User, error) GetPassword(ctx context.Context, userID uuid.UUID) (*model.HashingInstance, error) UpdatePassword(ctx context.Context, userID uuid.UUID, password *model.HashingInstance) error Get(ctx context.Context, userID uuid.UUID) (*user.User, error) GetByIdentifier(ctx context.Context, id *model.UserIdentifier) (*user.User, error) List(ctx context.Context, set *settings.Settings, pagination *model.Pagination, search string) (iterator.Iterator[*model.UserEntry], uint64, error) Delete(ctx context.Context, userID uuid.UUID) (*user.User, error) DeleteMany(ctx context.Context, userBatch []*model.UserIdentifier) (uint64, error) DeleteAll(ctx context.Context) error GetOauth2Link(ctx context.Context, issuer string, subject string) (uuid.UUID, *oauth2.ProviderLink, error) CreateOauth2Link(ctx context.Context, userID uuid.UUID, p *oauth2.ProviderLink) error DeleteOauth2Links(ctx context.Context, userId uuid.UUID) error BuildIndexes(ctx context.Context) error }
type VerificationCode ¶
type VerificationCode interface { Create(ctx context.Context, verificationCode *user.VerificationCode) (*user.VerificationCode, error) Get(ctx context.Context, userID uuid.UUID, verificationType user.VerificationType) (*user.VerificationCode, error) IncreaseAttempts(ctx context.Context, userID uuid.UUID, verificationType user.VerificationType) error Delete(ctx context.Context, userID uuid.UUID, verificationType user.VerificationType) error BuildIndexes(ctx context.Context) error }
func NewVerificationCode ¶
func NewVerificationCode(p params) (VerificationCode, error)
Source Files
¶
Directories
¶
Path | Synopsis |
---|---|
mongo
Mongo implements the repository.Group interface.
|
Mongo implements the repository.Group interface. |
database
|
|
group
|
|
mongo
Mongo implements the repository.Group interface.
|
Mongo implements the repository.Group interface. |
project
|
|
mongo
Mongo implements the repository.Group interface.
|
Mongo implements the repository.Group interface. |
secret
|
|
service_account
|
|
session
|
|
storage
|
|
user
|
|
verification_code
|
|
Click to show internal directories.
Click to hide internal directories.