releaselifecycle

package
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 15, 2024 License: MPL-2.0 Imports: 15 Imported by: 0

Documentation

Overview

Package releaselifecycle implements functionality related to Phobos release lifecycles.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CreateReleaseLifecycleInput

type CreateReleaseLifecycleInput struct {
	Scope               models.ScopeType
	OrganizationID      *string
	ProjectID           *string
	Name                string
	LifecycleTemplateID string
}

CreateReleaseLifecycleInput is the input for creating a release lifecycle

type DeleteReleaseLifecycleInput

type DeleteReleaseLifecycleInput struct {
	Version *int
	ID      string
}

DeleteReleaseLifecycleInput is the input for deleting a release lifecycle

type GetReleaseLifecyclesInput

type GetReleaseLifecyclesInput struct {
	// Sort specifies the field to sort on and direction
	Sort *db.ReleaseLifecycleSortableField
	// PaginationOptions supports cursor based pagination
	PaginationOptions *pagination.Options
	// Search filters the release lifecycles by the name prefix
	Search *string
	// OrganizationID filters the release lifecycles by the specified organization.
	OrganizationID *string
	// ProjectID filters the release lifecycles by the specified project.
	ProjectID *string
	// ReleaseLifecycleScopes will filter the release lifecycles that are scope to specific level
	ReleaseLifecycleScopes []models.ScopeType
}

GetReleaseLifecyclesInput is the input for querying a list of release lifecycles

type Service

type Service interface {
	GetReleaseLifecycleByID(ctx context.Context, id string) (*models.ReleaseLifecycle, error)
	GetReleaseLifecycleByPRN(ctx context.Context, prn string) (*models.ReleaseLifecycle, error)
	GetReleaseLifecyclesByIDs(ctx context.Context, idList []string) ([]*models.ReleaseLifecycle, error)
	GetReleaseLifecycles(ctx context.Context, input *GetReleaseLifecyclesInput) (*db.ReleaseLifecyclesResult, error)
	CreateReleaseLifecycle(ctx context.Context, input *CreateReleaseLifecycleInput) (*models.ReleaseLifecycle, error)
	UpdateReleaseLifecycle(ctx context.Context, input *UpdateReleaseLifecycleInput) (*models.ReleaseLifecycle, error)
	DeleteReleaseLifecycle(ctx context.Context, input *DeleteReleaseLifecycleInput) error
}

Service implements all release lifecycle related functionality Please note the HCL data is NOT returned by the Get... methods other than GetReleaseLifecycleData.

func NewService

func NewService(
	logger logger.Logger,
	dbClient *db.Client,
	lifecycleTemplateDataStore lifecycletemplate.DataStore,
	limitChecker limits.LimitChecker,
	activityService activityevent.Service,
) Service

NewService returns an instance of Service

type UpdateReleaseLifecycleInput

type UpdateReleaseLifecycleInput struct {
	Version             *int
	ID                  string
	LifecycleTemplateID string
}

UpdateReleaseLifecycleInput is the input for updating the lifecycle template ID of a release lifecycle

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL