Documentation
¶
Index ¶
Constants ¶
View Source
const ( CredCreationSucceededCount = "CredCreationSucceededCount" CredCreationSucceededDuration = "CredCreationSucceededDuration" CredCreationFailedCount = "CredCreationFailedCount" )
View Source
const ( GardenContainerCreationDuration = "GardenContainerCreationDuration" GardenContainerCreationSucceededDuration = "GardenContainerCreationSucceededDuration" GardenContainerCreationFailedDuration = "GardenContainerCreationFailedDuration" GardenContainerDestructionSucceededDuration = "GardenContainerDestructionSucceededDuration" GardenContainerDestructionFailedDuration = "GardenContainerDestructionFailedDuration" )
To be deprecated
View Source
const BindMountCleanupFailed = "failed to cleanup bindmount artifacts"
View Source
const ContainerExpirationMessage = "expired container"
View Source
const ContainerInitializationFailedMessage = "failed to initialize container"
View Source
const ContainerMissingMessage = "missing garden container"
View Source
const ContainerOwnerProperty = "executor:owner"
View Source
const CredDirFailed = "failed to create credentials directory"
View Source
const DownloadCachedDependenciesFailed = "failed to download cached artifacts"
View Source
const VolmanMountFailed = "failed to mount volume"
Variables ¶
View Source
var (
ErrFailedToCAS = errors.New("failed-to-cas")
)
View Source
var ErrIPRangeConversionFailed = errors.New("failed to convert destination to ip range")
Functions ¶
This section is empty.
Types ¶
type BindMountCacheKey ¶
func NewbindMountCacheKey ¶
func NewbindMountCacheKey(cacheKey, dir string) BindMountCacheKey
type BindMounts ¶
type BindMounts struct {
CacheKeys []BindMountCacheKey
GardenBindMounts []garden.BindMount
}
func NewBindMounts ¶
func NewBindMounts(capacity int) BindMounts
func (*BindMounts) AddBindMount ¶
func (b *BindMounts) AddBindMount(cacheKey string, mount garden.BindMount)
type ContainerConfig ¶
type ContainerStore ¶
type ContainerStore interface {
// Setters
Reserve(logger lager.Logger, req *executor.AllocationRequest) (executor.Container, error)
Destroy(logger lager.Logger, guid string) error
// Container Operations
Initialize(logger lager.Logger, req *executor.RunRequest) error
Create(logger lager.Logger, guid string) (executor.Container, error)
Run(logger lager.Logger, guid string) error
Stop(logger lager.Logger, guid string) error
// Getters
Get(logger lager.Logger, guid string) (executor.Container, error)
List(logger lager.Logger) []executor.Container
Metrics(logger lager.Logger) (map[string]executor.ContainerMetrics, error)
RemainingResources(logger lager.Logger) executor.ExecutorResources
GetFiles(logger lager.Logger, guid, sourcePath string) (io.ReadCloser, error)
// Cleanup
NewRegistryPruner(logger lager.Logger) ifrit.Runner
NewContainerReaper(logger lager.Logger) ifrit.Runner
// shutdown the dependency manager
Cleanup(logger lager.Logger)
}
func New ¶
func New( containerConfig ContainerConfig, totalCapacity *executor.ExecutorResources, gardenClient garden.Client, dependencyManager DependencyManager, volumeManager volman.Manager, credManager CredManager, clock clock.Clock, eventEmitter event.Hub, transformer transformer.Transformer, trustedSystemCertificatesPath string, metronClient loggregator_v2.IngressClient, declarativeHealthcheckPath string, ) ContainerStore
type CredManager ¶
type CredManager interface {
CreateCredDir(lager.Logger, executor.Container) ([]garden.BindMount, []executor.EnvironmentVariable, error)
Runner(lager.Logger, executor.Container) ifrit.Runner
}
func NewCredManager ¶
func NewCredManager( logger lager.Logger, metronClient loggregator_v2.IngressClient, credDir string, validityPeriod time.Duration, entropyReader io.Reader, clock clock.Clock, CaCert *x509.Certificate, privateKey *rsa.PrivateKey, containerMountPath string, ) CredManager
func NewNoopCredManager ¶
func NewNoopCredManager() CredManager
type DependencyManager ¶
type DependencyManager interface {
DownloadCachedDependencies(logger lager.Logger, mounts []executor.CachedDependency, logStreamer log_streamer.LogStreamer) (BindMounts, error)
ReleaseCachedDependencies(logger lager.Logger, keys []BindMountCacheKey) error
Stop(logger lager.Logger)
}
func NewDependencyManager ¶
func NewDependencyManager(cache cacheddownloader.CachedDownloader, downloadRateLimiter chan struct{}) DependencyManager
Source Files
¶
Click to show internal directories.
Click to hide internal directories.