Documentation
¶
Index ¶
- type DeploymentRepository
- func (self *DeploymentRepository) AssignKubernetesJobName(ctx context.Context, deploymentID uuid.UUID, jobName string) (*ent.Deployment, error)
- func (self *DeploymentRepository) AttachDeploymentMetadata(ctx context.Context, tx repository.TxInterface, deploymentID uuid.UUID, ...) (*ent.Deployment, error)
- func (self *DeploymentRepository) Create(ctx context.Context, tx repository.TxInterface, serviceID uuid.UUID, ...) (*ent.Deployment, error)
- func (self *DeploymentRepository) CreateCopy(ctx context.Context, tx repository.TxInterface, deployment *ent.Deployment) (*ent.Deployment, error)
- func (self *DeploymentRepository) ExistsInEnvironment(ctx context.Context, deploymentID uuid.UUID, environmentID uuid.UUID) (bool, error)
- func (self *DeploymentRepository) ExistsInProject(ctx context.Context, deploymentID uuid.UUID, projectID uuid.UUID) (bool, error)
- func (self *DeploymentRepository) ExistsInTeam(ctx context.Context, deploymentID uuid.UUID, teamID uuid.UUID) (bool, error)
- func (self *DeploymentRepository) GetByID(ctx context.Context, deploymentID uuid.UUID) (*ent.Deployment, error)
- func (self *DeploymentRepository) GetByServiceIDPaginated(ctx context.Context, serviceID uuid.UUID, perPage int, cursor *time.Time, ...) (jobs []*ent.Deployment, nextCursor *time.Time, err error)
- func (self *DeploymentRepository) GetJobsByStatus(ctx context.Context, status schema.DeploymentStatus) ([]*ent.Deployment, error)
- func (self *DeploymentRepository) GetLastSuccessfulDeployment(ctx context.Context, serviceID uuid.UUID) (*ent.Deployment, error)
- func (self *DeploymentRepository) MarkAsCancelled(ctx context.Context, jobIDs []uuid.UUID) error
- func (self *DeploymentRepository) MarkCancelledExcept(ctx context.Context, serviceID uuid.UUID, deploymentID uuid.UUID) error
- func (self *DeploymentRepository) MarkFailed(ctx context.Context, tx repository.TxInterface, deploymentID uuid.UUID, ...) (*ent.Deployment, error)
- func (self *DeploymentRepository) MarkQueued(ctx context.Context, tx repository.TxInterface, deploymentID uuid.UUID, ...) (*ent.Deployment, error)
- func (self *DeploymentRepository) MarkStarted(ctx context.Context, tx repository.TxInterface, deploymentID uuid.UUID, ...) (*ent.Deployment, error)
- func (self *DeploymentRepository) MarkSucceeded(ctx context.Context, tx repository.TxInterface, deploymentID uuid.UUID, ...) (*ent.Deployment, error)
- func (self *DeploymentRepository) SetKubernetesJobStatus(ctx context.Context, deploymentID uuid.UUID, status string) (*ent.Deployment, error)
- type DeploymentRepositoryInterface
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DeploymentRepository ¶
type DeploymentRepository struct {
// contains filtered or unexported fields
}
DeploymentRepository handles GitHub-related database operations
func NewDeploymentRepository ¶
func NewDeploymentRepository(db *ent.Client) *DeploymentRepository
NewDeploymentRepository creates a new repository
func (*DeploymentRepository) AssignKubernetesJobName ¶
func (self *DeploymentRepository) AssignKubernetesJobName(ctx context.Context, deploymentID uuid.UUID, jobName string) (*ent.Deployment, error)
Assigns the kubernetes "Job" name to the build job
func (*DeploymentRepository) AttachDeploymentMetadata ¶
func (self *DeploymentRepository) AttachDeploymentMetadata(ctx context.Context, tx repository.TxInterface, deploymentID uuid.UUID, imageName string, resourceDefinition *v1.Service) (*ent.Deployment, error)
func (*DeploymentRepository) Create ¶
func (self *DeploymentRepository) Create(ctx context.Context, tx repository.TxInterface, serviceID uuid.UUID, CommitSHA, CommitMessage string, committer *schema.GitCommitter, source schema.DeploymentSource, initialStatus schema.DeploymentStatus) (*ent.Deployment, error)
func (*DeploymentRepository) CreateCopy ¶
func (self *DeploymentRepository) CreateCopy(ctx context.Context, tx repository.TxInterface, deployment *ent.Deployment) (*ent.Deployment, error)
Create a copy with all metadata, except for failed_at, completed_at, and status
func (*DeploymentRepository) ExistsInEnvironment ¶
func (*DeploymentRepository) ExistsInProject ¶
func (*DeploymentRepository) ExistsInTeam ¶
func (*DeploymentRepository) GetByID ¶
func (self *DeploymentRepository) GetByID(ctx context.Context, deploymentID uuid.UUID) (*ent.Deployment, error)
func (*DeploymentRepository) GetByServiceIDPaginated ¶
func (self *DeploymentRepository) GetByServiceIDPaginated(ctx context.Context, serviceID uuid.UUID, perPage int, cursor *time.Time, statusFilter []schema.DeploymentStatus) (jobs []*ent.Deployment, nextCursor *time.Time, err error)
func (*DeploymentRepository) GetJobsByStatus ¶
func (self *DeploymentRepository) GetJobsByStatus(ctx context.Context, status schema.DeploymentStatus) ([]*ent.Deployment, error)
func (*DeploymentRepository) GetLastSuccessfulDeployment ¶
func (self *DeploymentRepository) GetLastSuccessfulDeployment(ctx context.Context, serviceID uuid.UUID) (*ent.Deployment, error)
func (*DeploymentRepository) MarkAsCancelled ¶
Mark cancelled by IDs
func (*DeploymentRepository) MarkCancelledExcept ¶
func (self *DeploymentRepository) MarkCancelledExcept(ctx context.Context, serviceID uuid.UUID, deploymentID uuid.UUID) error
Cancels all jobs that are not in a finished state
func (*DeploymentRepository) MarkFailed ¶
func (self *DeploymentRepository) MarkFailed(ctx context.Context, tx repository.TxInterface, deploymentID uuid.UUID, message string, failedAt time.Time) (*ent.Deployment, error)
func (*DeploymentRepository) MarkQueued ¶
func (self *DeploymentRepository) MarkQueued(ctx context.Context, tx repository.TxInterface, deploymentID uuid.UUID, queuedAt time.Time) (*ent.Deployment, error)
func (*DeploymentRepository) MarkStarted ¶
func (self *DeploymentRepository) MarkStarted(ctx context.Context, tx repository.TxInterface, deploymentID uuid.UUID, startedAt time.Time) (*ent.Deployment, error)
func (*DeploymentRepository) MarkSucceeded ¶
func (self *DeploymentRepository) MarkSucceeded(ctx context.Context, tx repository.TxInterface, deploymentID uuid.UUID, completedAt time.Time) (*ent.Deployment, error)
func (*DeploymentRepository) SetKubernetesJobStatus ¶
func (self *DeploymentRepository) SetKubernetesJobStatus(ctx context.Context, deploymentID uuid.UUID, status string) (*ent.Deployment, error)
type DeploymentRepositoryInterface ¶
type DeploymentRepositoryInterface interface {
Create(ctx context.Context, tx repository.TxInterface, serviceID uuid.UUID, CommitSHA, CommitMessage string, committer *schema.GitCommitter, source schema.DeploymentSource, initialStatus schema.DeploymentStatus) (*ent.Deployment, error)
MarkQueued(ctx context.Context, tx repository.TxInterface, deploymentID uuid.UUID, queuedAt time.Time) (*ent.Deployment, error)
MarkStarted(ctx context.Context, tx repository.TxInterface, deploymentID uuid.UUID, startedAt time.Time) (*ent.Deployment, error)
MarkFailed(ctx context.Context, tx repository.TxInterface, deploymentID uuid.UUID, message string, failedAt time.Time) (*ent.Deployment, error)
MarkSucceeded(ctx context.Context, tx repository.TxInterface, deploymentID uuid.UUID, completedAt time.Time) (*ent.Deployment, error)
// Cancels all jobs that are not in a finished state
MarkCancelledExcept(ctx context.Context, serviceID uuid.UUID, deploymentID uuid.UUID) error
// Mark cancelled by IDs
MarkAsCancelled(ctx context.Context, jobIDs []uuid.UUID) error
// Assigns the kubernetes "Job" name to the build job
AssignKubernetesJobName(ctx context.Context, deploymentID uuid.UUID, jobName string) (*ent.Deployment, error)
SetKubernetesJobStatus(ctx context.Context, deploymentID uuid.UUID, status string) (*ent.Deployment, error)
AttachDeploymentMetadata(ctx context.Context, tx repository.TxInterface, deploymentID uuid.UUID, imageName string, resourceDefinition *v1.Service) (*ent.Deployment, error)
// Create a copy with all metadata, except for failed_at, completed_at, and status
CreateCopy(ctx context.Context, tx repository.TxInterface, deployment *ent.Deployment) (*ent.Deployment, error)
GetByID(ctx context.Context, deploymentID uuid.UUID) (*ent.Deployment, error)
ExistsInEnvironment(ctx context.Context, deploymentID uuid.UUID, environmentID uuid.UUID) (bool, error)
ExistsInProject(ctx context.Context, deploymentID uuid.UUID, projectID uuid.UUID) (bool, error)
ExistsInTeam(ctx context.Context, deploymentID uuid.UUID, teamID uuid.UUID) (bool, error)
GetLastSuccessfulDeployment(ctx context.Context, serviceID uuid.UUID) (*ent.Deployment, error)
GetJobsByStatus(ctx context.Context, status schema.DeploymentStatus) ([]*ent.Deployment, error)
GetByServiceIDPaginated(ctx context.Context, serviceID uuid.UUID, perPage int, cursor *time.Time, statusFilter []schema.DeploymentStatus) (jobs []*ent.Deployment, nextCursor *time.Time, err error)
}
DeploymentRepositoryInterface ...
Click to show internal directories.
Click to hide internal directories.