Documentation ¶
Index ¶
- Constants
- type Artefact
- type ArtefactKey
- type ArtefactRepository
- type ArtefactRow
- type ContainerConfig
- type ContainerService
- func (s *ContainerService) AddReleaseArtefact(ctx context.Context, key model.DeploymentKey, ra ReleaseArtefact) error
- func (s *ContainerService) DiscoverArtefacts(ctx context.Context, prefix string) ([]ArtefactRepository, error)
- func (s *ContainerService) DiscoverModuleArtefacts(ctx context.Context) ([]ArtefactRepository, error)
- func (s *ContainerService) Download(ctx context.Context, digest sha256.SHA256) (io.ReadCloser, error)
- func (s *ContainerService) GetDigestsKeys(ctx context.Context, digests []sha256.SHA256) (keys []ArtefactKey, missing []sha256.SHA256, err error)
- func (s *ContainerService) GetReleaseArtefacts(ctx context.Context, releaseID int64) ([]ReleaseArtefact, error)
- func (s *ContainerService) Upload(ctx context.Context, artefact Artefact) (sha256.SHA256, error)
- type DAL
- type Metadata
- type Registry
- type ReleaseArtefact
- type Service
- func (s *Service) AddReleaseArtefact(ctx context.Context, key model.DeploymentKey, ra ReleaseArtefact) error
- func (s *Service) Download(ctx context.Context, digest sha256.SHA256) (io.ReadCloser, error)
- func (s *Service) GetDigestsKeys(ctx context.Context, digests []sha256.SHA256) (keys []ArtefactKey, missing []sha256.SHA256, err error)
- func (s *Service) GetReleaseArtefacts(ctx context.Context, releaseID int64) ([]ReleaseArtefact, error)
- func (s *Service) Upload(ctx context.Context, artefact Artefact) (sha256.SHA256, error)
Constants ¶
View Source
const (
ModuleArtifactPrefix = "ftl/modules/"
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ArtefactKey ¶
type ArtefactRepository ¶ added in v0.379.0
type ArtefactRow ¶
type ContainerConfig ¶ added in v0.379.0
type ContainerConfig struct { Registry string `help:"OCI container registry host:port" env:"FTL_ARTEFACTS_REGISTRY"` Username string `help:"OCI container registry username" env:"FTL_ARTEFACTS_USER"` Password string `help:"OCI container registry password" env:"FTL_ARTEFACTS_PWD"` AllowPlainHTTP bool `help:"Allows OCI container requests to accept plain HTTP responses" env:"FTL_ARTEFACTS_ALLOW_HTTP"` }
type ContainerService ¶ added in v0.379.0
type ContainerService struct { // in the interim releases and artefacts will continue to be linked via the `deployment_artefacts` table Handle *libdal.Handle[ContainerService] // contains filtered or unexported fields }
func NewContainerService ¶ added in v0.379.0
func NewContainerService(c ContainerConfig, conn libdal.Connection) *ContainerService
func (*ContainerService) AddReleaseArtefact ¶ added in v0.379.0
func (s *ContainerService) AddReleaseArtefact(ctx context.Context, key model.DeploymentKey, ra ReleaseArtefact) error
func (*ContainerService) DiscoverArtefacts ¶ added in v0.379.0
func (s *ContainerService) DiscoverArtefacts(ctx context.Context, prefix string) ([]ArtefactRepository, error)
func (*ContainerService) DiscoverModuleArtefacts ¶ added in v0.379.0
func (s *ContainerService) DiscoverModuleArtefacts(ctx context.Context) ([]ArtefactRepository, error)
func (*ContainerService) Download ¶ added in v0.379.0
func (s *ContainerService) Download(ctx context.Context, digest sha256.SHA256) (io.ReadCloser, error)
func (*ContainerService) GetDigestsKeys ¶ added in v0.379.0
func (s *ContainerService) GetDigestsKeys(ctx context.Context, digests []sha256.SHA256) (keys []ArtefactKey, missing []sha256.SHA256, err error)
func (*ContainerService) GetReleaseArtefacts ¶ added in v0.379.0
func (s *ContainerService) GetReleaseArtefacts(ctx context.Context, releaseID int64) ([]ReleaseArtefact, error)
type Registry ¶
type Registry interface { // GetDigestsKeys locates the `digests` corresponding `ArtefactKey`s and identifies the missing ones GetDigestsKeys(ctx context.Context, digests []sha256.SHA256) (keys []ArtefactKey, missing []sha256.SHA256, err error) // Upload pushes the specified media, and metadata, to the registry and returns the computed digest Upload(context context.Context, artefact Artefact) (sha256.SHA256, error) // Download performs a streaming download of the artefact identified by the supplied digest Download(context context.Context, digest sha256.SHA256) (io.ReadCloser, error) // GetReleaseArtefacts locates the artefacts metadata corresponding with the specified release GetReleaseArtefacts(ctx context.Context, releaseID int64) ([]ArtefactKey, error) // AddReleaseArtefact associates the given `release` with the artefact associated with the given `digest` AddReleaseArtefact(ctx context.Context, key model.DeploymentKey, ra ReleaseArtefact) error }
type ReleaseArtefact ¶
type ReleaseArtefact struct { Artefact ArtefactKey Path string Executable bool }
type Service ¶
func New ¶
func New(conn libdal.Connection) *Service
func (*Service) AddReleaseArtefact ¶
func (s *Service) AddReleaseArtefact(ctx context.Context, key model.DeploymentKey, ra ReleaseArtefact) error
func (*Service) GetDigestsKeys ¶
func (*Service) GetReleaseArtefacts ¶
Click to show internal directories.
Click to hide internal directories.