Documentation
¶
Index ¶
- Variables
- func GetDependenciesArgsKeys(dependencies []*config.Dependency) (res []string)
- func IsErrInvalidBaseImage(err error) bool
- func ResolveDependenciesArgs(targetPlatform string, dependencies []*config.Dependency, c Conveyor) map[string]string
- func ResolveDependenciesArgsForContent(dependencies []*config.Dependency) map[string]string
- type BaseStage
- func (s *BaseStage) ExpandDependencies(ctx context.Context, c Conveyor, baseEnv map[string]string) error
- func (s *BaseStage) FetchDependencies(_ context.Context, _ Conveyor, _ container_backend.ContainerBackend, ...) error
- func (s *BaseStage) GetContentDependencies(ctx context.Context, c Conveyor, ...) (string, error)
- func (s *BaseStage) GetContentDigest() string
- func (s *BaseStage) GetDependencies(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, ...) (string, error)
- func (s *BaseStage) GetDigest() string
- func (s *BaseStage) GetGitMappings() []*GitMapping
- func (s *BaseStage) GetMeta() *StageMeta
- func (s *BaseStage) GetNextStageDependencies(_ context.Context, _ Conveyor) (string, error)
- func (s *BaseStage) GetStageImage() *StageImage
- func (s *BaseStage) HasPrevStage() bool
- func (s *BaseStage) ImageName() string
- func (s *BaseStage) IsBuildable() bool
- func (s *BaseStage) IsContentAnchor() bool
- func (s *BaseStage) IsEmpty(_ context.Context, _ Conveyor, _ *StageImage) (bool, error)
- func (s *BaseStage) IsMutable() bool
- func (s *BaseStage) IsStapelStage() bool
- func (s *BaseStage) LogDetailedName() string
- func (s *BaseStage) LogName() string
- func (s *BaseStage) MutateImage(_ context.Context, _ ImageMutatorPusher, _, _ *StageImage) error
- func (s *BaseStage) Name() StageName
- func (s *BaseStage) PreRun(_ context.Context, _ Conveyor) error
- func (s *BaseStage) PrepareImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, ...) error
- func (s *BaseStage) SelectSuitableStageDesc(ctx context.Context, c Conveyor, stageDescSet image.StageDescSet) (*image.StageDesc, error)
- func (s *BaseStage) SetContentAnchor(v bool)
- func (s *BaseStage) SetContentDigest(contentDigest string)
- func (s *BaseStage) SetDigest(digest string)
- func (s *BaseStage) SetGitMappings(gitMappings []*GitMapping)
- func (s *BaseStage) SetMeta(meta *StageMeta)
- func (s *BaseStage) SetStageImage(stageImage *StageImage)
- func (s *BaseStage) TargetPlatform() string
- func (s *BaseStage) UsesBuildContext() bool
- type BaseStageOptions
- type BeforeInstallStage
- func (s *BeforeInstallStage) GetContentDependencies(ctx context.Context, c Conveyor, ...) (string, error)
- func (s *BeforeInstallStage) GetDependencies(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, ...) (string, error)
- func (s *BeforeInstallStage) PrepareImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, ...) error
- type BeforeSetupStage
- type ContainerBackendStub
- func (containerBackend *ContainerBackendStub) GetImageInfo(ctx context.Context, ref string, opts container_backend.GetImageInfoOpts) (*image.Info, error)
- func (containerBackend *ContainerBackendStub) HasContainerRootMountSupport() bool
- func (containerBackend *ContainerBackendStub) Pull(ctx context.Context, ref string, opts container_backend.PullOpts) error
- type ContainerFileDescriptor
- type ContextChecksum
- type Conveyor
- type ConveyorStub
- func (c *ConveyorStub) GetImageContentTagDigest(targetPlatform, imageName string) string
- func (c *ConveyorStub) GetImageContentTagName(targetPlatform, imageName string) string
- func (c *ConveyorStub) GetImageContentTagStageID(targetPlatform, imageName string) string
- func (c *ConveyorStub) GiterminismManager() giterminism_manager.Interface
- func (c *ConveyorStub) UseLegacyStapelBuilder(cr container_backend.ContainerBackend) bool
- type DependenciesAfterInstallStage
- type DependenciesAfterSetupStage
- type DependenciesBeforeInstallStage
- type DependenciesBeforeSetupStage
- type DependenciesStage
- func (s *DependenciesStage) GetContentDependencies(_ context.Context, _ Conveyor, _ container_backend.BuildContextArchiver) (string, error)
- func (s *DependenciesStage) GetDependencies(ctx context.Context, c Conveyor, _ container_backend.ContainerBackend, ...) (string, error)
- func (s *DependenciesStage) PrepareImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, ...) error
- type DockerRegistryApiStub
- type DockerRunArgs
- type DockerStages
- func (ds *DockerStages) AddDockerStageEnv(dockerStageID int, key, value string) (string, string, error)
- func (ds *DockerStages) DockerStageArgsHash(dockerStageID int) map[string]string
- func (ds *DockerStages) DockerStageEnvs(dockerStageID int) map[string]string
- func (ds *DockerStages) ShlexProcessWordWithMetaArgs(value string, resolvedDockerMetaArgsHash map[string]string) (string, error)
- func (ds *DockerStages) ShlexProcessWordWithStageArgsAndEnvs(dockerStageID int, value string) (string, error)
- func (ds *DockerStages) ShlexProcessWordWithStageEnvs(dockerStageID int, value string) (string, error)
- type FromStage
- func (s *FromStage) GetContentDependencies(_ context.Context, _ Conveyor, _ container_backend.BuildContextArchiver) (string, error)
- func (s *FromStage) GetDependencies(_ context.Context, c Conveyor, _ container_backend.ContainerBackend, ...) (string, error)
- func (s *FromStage) HasPrevStage() bool
- func (s *FromStage) IsBuildable() bool
- func (s *FromStage) IsMutable() bool
- func (s *FromStage) MutateImage(ctx context.Context, storage ImageMutatorPusher, ...) error
- func (s *FromStage) PrepareImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, ...) error
- type FullDockerfileStage
- func (s *FullDockerfileStage) FetchDependencies(_ context.Context, _ Conveyor, _ container_backend.ContainerBackend, ...) error
- func (s *FullDockerfileStage) GetContentDependencies(ctx context.Context, c Conveyor, _ container_backend.BuildContextArchiver) (string, error)
- func (s *FullDockerfileStage) GetDependencies(ctx context.Context, c Conveyor, _ container_backend.ContainerBackend, ...) (string, error)
- func (s *FullDockerfileStage) HasPrevStage() bool
- func (s *FullDockerfileStage) IsStapelStage() bool
- func (s *FullDockerfileStage) MutateImage(_ context.Context, _ ImageMutatorPusher, _, _ *StageImage) error
- func (s *FullDockerfileStage) PrepareImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, ...) error
- func (s *FullDockerfileStage) SetupDockerImageBuilder(b stage_builder.DockerfileBuilderInterface, c Conveyor) error
- func (s *FullDockerfileStage) UsesBuildContext() bool
- type GitArchiveStage
- func (s *GitArchiveStage) GetContentDependencies(ctx context.Context, c Conveyor, ...) (string, error)
- func (s *GitArchiveStage) GetDependencies(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, ...) (string, error)
- func (s *GitArchiveStage) GetNextStageDependencies(ctx context.Context, c Conveyor) (string, error)
- func (s *GitArchiveStage) IsEmpty(ctx context.Context, c Conveyor, stageImage *StageImage) (bool, error)
- func (s *GitArchiveStage) PrepareImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, ...) error
- type GitCacheStage
- func (s *GitCacheStage) GetContentDependencies(ctx context.Context, c Conveyor, ...) (string, error)
- func (s *GitCacheStage) GetDependencies(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, ...) (string, error)
- func (s *GitCacheStage) GetNextStageDependencies(ctx context.Context, c Conveyor) (string, error)
- func (s *GitCacheStage) IsEmpty(ctx context.Context, c Conveyor, prevBuiltImage *StageImage) (bool, error)
- type GitLatestPatchStage
- func (s *GitLatestPatchStage) GetContentDependencies(ctx context.Context, c Conveyor, ...) (string, error)
- func (s *GitLatestPatchStage) GetDependencies(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, ...) (string, error)
- func (s *GitLatestPatchStage) GetNextStageDependencies(ctx context.Context, c Conveyor) (string, error)
- func (s *GitLatestPatchStage) IsEmpty(ctx context.Context, c Conveyor, prevBuiltImage *StageImage) (bool, error)
- func (s *GitLatestPatchStage) IsGitPatchEmpty(ctx context.Context, c Conveyor, prevBuiltImage *StageImage) (bool, error)
- type GitMapping
- func (gm *GitMapping) AddGitCommitToImageLabels(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, ...)
- func (gm *GitMapping) GetBaseCommitForPrevBuiltImage(ctx context.Context, c Conveyor, prevBuiltImage *StageImage) (string, error)
- func (gm *GitMapping) GetBuiltImageCommitInfo(builtImageLabels map[string]string) (ImageCommitInfo, error)
- func (gm *GitMapping) GetFullName() string
- func (gm *GitMapping) GetLatestCommitInfo(ctx context.Context, c Conveyor) (ImageCommitInfo, error)
- func (gm *GitMapping) GetParamshash() string
- func (gm *GitMapping) GetPatchContent(ctx context.Context, c Conveyor, prevBuiltImage *StageImage) (string, error)
- func (gm *GitMapping) GitRepo() git_repo.GitRepo
- func (gm *GitMapping) ImageGitCommitLabel() string
- func (gm *GitMapping) IsLocal() bool
- func (gm *GitMapping) IsPatchEmpty(ctx context.Context, c Conveyor, prevBuiltImage *StageImage) (bool, error)
- func (gm *GitMapping) PatchSize(ctx context.Context, c Conveyor, fromCommit string) (int64, error)
- func (gm *GitMapping) PrepareArchiveForImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, ...) error
- func (gm *GitMapping) PreparePatchForImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, ...) error
- func (gm *GitMapping) SetGitRepo(gitRepo git_repo.GitRepo)
- func (gm *GitMapping) StageDependenciesChecksum(ctx context.Context, c Conveyor, stageName StageName) (string, error)
- type GitPatchStage
- type GitRepoArchiveStub
- type GitStage
- func (s *GitStage) IsEmpty(ctx context.Context, _ Conveyor, _ *StageImage) (bool, error)
- func (s *GitStage) PrepareImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, ...) error
- func (s *GitStage) SelectSuitableStageDesc(ctx context.Context, c Conveyor, stageDescSet image.StageDescSet) (*image.StageDesc, error)
- type GiterminismInspectorStub
- type GiterminismManagerStub
- func (manager *GiterminismManagerStub) Dev() bool
- func (manager *GiterminismManagerStub) HeadCommit(ctx context.Context) string
- func (manager *GiterminismManagerStub) Inspector() giterminism_manager.Inspector
- func (manager *GiterminismManagerStub) LocalGitRepo() git_repo.GitRepo
- func (manager *GiterminismManagerStub) RelativeToGitProjectDir() string
- type ImageCommitInfo
- type ImageMutatorPusher
- type ImageSpecStage
- func (s *ImageSpecStage) GetContentDependencies(ctx context.Context, c Conveyor, ...) (string, error)
- func (s *ImageSpecStage) GetDependencies(_ context.Context, _ Conveyor, _ container_backend.ContainerBackend, ...) (string, error)
- func (s *ImageSpecStage) IsBuildable() bool
- func (s *ImageSpecStage) IsMutable() bool
- func (s *ImageSpecStage) MutateImage(ctx context.Context, storage ImageMutatorPusher, ...) error
- func (s *ImageSpecStage) PrepareImage(ctx context.Context, _ Conveyor, _ container_backend.ContainerBackend, ...) error
- type InstallStage
- type Interface
- type LegacyContainerOptionsStub
- type LegacyContainerStub
- type LegacyImageStub
- type LocalGitRepoStub
- func (repo *LocalGitRepoStub) GetOrCreateArchive(ctx context.Context, opts git_repo.ArchiveOptions) (git_repo.Archive, error)
- func (repo *LocalGitRepoStub) GetOrCreateChecksum(ctx context.Context, opts git_repo.ChecksumOptions) (string, error)
- func (repo *LocalGitRepoStub) HeadCommitHash(ctx context.Context) (string, error)
- type NewGitArchiveStageOptions
- type NewGitPatchStageOptions
- type ScratchImageStageStorage
- type SetupStage
- type StageImage
- type StageMeta
- type StageName
- type UserStage
- type UserWithGitPatchStage
- func (s *UserWithGitPatchStage) GetContentDependencies(ctx context.Context, c Conveyor, ...) (string, error)
- func (s *UserWithGitPatchStage) GetNextStageDependencies(ctx context.Context, c Conveyor) (string, error)
- func (s *UserWithGitPatchStage) PrepareImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, ...) error
- func (s *UserWithGitPatchStage) SelectSuitableStageDesc(ctx context.Context, c Conveyor, stageDescSet image.StageDescSet) (*image.StageDesc, error)
Constants ¶
This section is empty.
Variables ¶
var AllStages = []StageName{ From, BeforeInstall, DependenciesBeforeInstall, GitArchive, Install, DependenciesAfterInstall, BeforeSetup, DependenciesBeforeSetup, Setup, DependenciesAfterSetup, GitCache, GitLatestPatch, Dockerfile, ImageSpec, }
var ErrInvalidBaseImage = errors.New("invalid base image")
Functions ¶
func GetDependenciesArgsKeys ¶
func GetDependenciesArgsKeys(dependencies []*config.Dependency) (res []string)
func IsErrInvalidBaseImage ¶
func ResolveDependenciesArgs ¶
func ResolveDependenciesArgsForContent ¶
func ResolveDependenciesArgsForContent(dependencies []*config.Dependency) map[string]string
ResolveDependenciesArgsForContent resolves dependency build args to stable placeholders derived from the dependency image name, for use in content digests. The real values (ResolveDependenciesArgs) carry the built image name, tag and registry digest, all of which change on every rebuild of the dependency image.
Types ¶
type BaseStage ¶
type BaseStage struct {
// contains filtered or unexported fields
}
func NewBaseStage ¶
func NewBaseStage(name StageName, options *BaseStageOptions) *BaseStage
func (*BaseStage) ExpandDependencies ¶
func (*BaseStage) FetchDependencies ¶
func (s *BaseStage) FetchDependencies(_ context.Context, _ Conveyor, _ container_backend.ContainerBackend, _ docker_registry.GenericApiInterface) error
func (*BaseStage) GetContentDependencies ¶
func (s *BaseStage) GetContentDependencies(ctx context.Context, c Conveyor, buildContextArchive container_backend.BuildContextArchiver) (string, error)
func (*BaseStage) GetContentDigest ¶
func (*BaseStage) GetDependencies ¶
func (s *BaseStage) GetDependencies(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevImage, prevBuiltImage *StageImage, buildContextArchive container_backend.BuildContextArchiver) (string, error)
func (*BaseStage) GetGitMappings ¶
func (s *BaseStage) GetGitMappings() []*GitMapping
func (*BaseStage) GetNextStageDependencies ¶
func (*BaseStage) GetStageImage ¶
func (s *BaseStage) GetStageImage() *StageImage
func (*BaseStage) HasPrevStage ¶
func (*BaseStage) IsBuildable ¶
func (*BaseStage) IsContentAnchor ¶
func (*BaseStage) IsStapelStage ¶
func (*BaseStage) LogDetailedName ¶
func (*BaseStage) MutateImage ¶
func (s *BaseStage) MutateImage(_ context.Context, _ ImageMutatorPusher, _, _ *StageImage) error
func (*BaseStage) PrepareImage ¶
func (s *BaseStage) PrepareImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevBuiltImage, stageImage *StageImage, buildContextArchive container_backend.BuildContextArchiver) error
func (*BaseStage) SelectSuitableStageDesc ¶
func (*BaseStage) SetContentAnchor ¶
func (*BaseStage) SetContentDigest ¶
func (*BaseStage) SetGitMappings ¶
func (s *BaseStage) SetGitMappings(gitMappings []*GitMapping)
func (*BaseStage) SetStageImage ¶
func (s *BaseStage) SetStageImage(stageImage *StageImage)
func (*BaseStage) TargetPlatform ¶
func (*BaseStage) UsesBuildContext ¶
type BaseStageOptions ¶
type BeforeInstallStage ¶
type BeforeInstallStage struct {
*UserStage
}
func GenerateBeforeInstallStage ¶
func GenerateBeforeInstallStage(ctx context.Context, imageBaseConfig *config.StapelImageBase, baseStageOptions *BaseStageOptions) *BeforeInstallStage
func (*BeforeInstallStage) GetContentDependencies ¶
func (s *BeforeInstallStage) GetContentDependencies(ctx context.Context, c Conveyor, buildContextArchive container_backend.BuildContextArchiver) (string, error)
func (*BeforeInstallStage) GetDependencies ¶
func (s *BeforeInstallStage) GetDependencies(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevImage, prevBuiltImage *StageImage, buildContextArchive container_backend.BuildContextArchiver) (string, error)
func (*BeforeInstallStage) PrepareImage ¶
func (s *BeforeInstallStage) PrepareImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevBuiltImage, stageImage *StageImage, buildContextArchive container_backend.BuildContextArchiver) error
type BeforeSetupStage ¶
type BeforeSetupStage struct {
*UserWithGitPatchStage
}
func GenerateBeforeSetupStage ¶
func GenerateBeforeSetupStage(ctx context.Context, imageBaseConfig *config.StapelImageBase, gitPatchStageOptions *NewGitPatchStageOptions, baseStageOptions *BaseStageOptions) *BeforeSetupStage
func (*BeforeSetupStage) GetDependencies ¶
func (s *BeforeSetupStage) GetDependencies(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevImage, prevBuiltImage *StageImage, buildContextArchive container_backend.BuildContextArchiver) (string, error)
func (*BeforeSetupStage) PrepareImage ¶
func (s *BeforeSetupStage) PrepareImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevBuiltImage, stageImage *StageImage, buildContextArchive container_backend.BuildContextArchiver) error
type ContainerBackendStub ¶
type ContainerBackendStub struct {
container_backend.ContainerBackend
// contains filtered or unexported fields
}
func NewContainerBackendStub ¶
func NewContainerBackendStub() *ContainerBackendStub
func (*ContainerBackendStub) GetImageInfo ¶
func (containerBackend *ContainerBackendStub) GetImageInfo(ctx context.Context, ref string, opts container_backend.GetImageInfoOpts) (*image.Info, error)
func (*ContainerBackendStub) HasContainerRootMountSupport ¶
func (containerBackend *ContainerBackendStub) HasContainerRootMountSupport() bool
func (*ContainerBackendStub) Pull ¶
func (containerBackend *ContainerBackendStub) Pull(ctx context.Context, ref string, opts container_backend.PullOpts) error
type ContainerFileDescriptor ¶
type ContextChecksum ¶
type ContextChecksum struct {
// contains filtered or unexported fields
}
func NewContextChecksum ¶
func NewContextChecksum(dockerignorePathMatcher path_matcher.PathMatcher) *ContextChecksum
type Conveyor ¶
type Conveyor interface {
GetImageContentTagStageID(targetPlatform, imageName string) string
GetImageContentTagDigest(targetPlatform, imageName string) string
GetImageContentTagName(targetPlatform, imageName string) string
GetImportServer(ctx context.Context, targetPlatform, imageName string, fromExternalImage bool) (import_server.ImportServer, error)
GiterminismManager() giterminism_manager.Interface
UseLegacyStapelBuilder(cb container_backend.ContainerBackend) bool
}
type ConveyorStub ¶
type ConveyorStub struct {
Conveyor
// contains filtered or unexported fields
}
func NewConveyorStub ¶
func NewConveyorStub(giterminismManager *GiterminismManagerStub, lastStageImageNameByImageName, lastStageImageDigestByImageName map[string]string) *ConveyorStub
func (*ConveyorStub) GetImageContentTagDigest ¶
func (c *ConveyorStub) GetImageContentTagDigest(targetPlatform, imageName string) string
func (*ConveyorStub) GetImageContentTagName ¶
func (c *ConveyorStub) GetImageContentTagName(targetPlatform, imageName string) string
func (*ConveyorStub) GetImageContentTagStageID ¶
func (c *ConveyorStub) GetImageContentTagStageID(targetPlatform, imageName string) string
func (*ConveyorStub) GiterminismManager ¶
func (c *ConveyorStub) GiterminismManager() giterminism_manager.Interface
func (*ConveyorStub) UseLegacyStapelBuilder ¶
func (c *ConveyorStub) UseLegacyStapelBuilder(cr container_backend.ContainerBackend) bool
type DependenciesAfterInstallStage ¶
type DependenciesAfterInstallStage struct {
*DependenciesStage
}
func GenerateDependenciesAfterInstallStage ¶
func GenerateDependenciesAfterInstallStage(imageBaseConfig *config.StapelImageBase, baseStageOptions *BaseStageOptions) *DependenciesAfterInstallStage
type DependenciesAfterSetupStage ¶
type DependenciesAfterSetupStage struct {
*DependenciesStage
}
func GenerateDependenciesAfterSetupStage ¶
func GenerateDependenciesAfterSetupStage(imageBaseConfig *config.StapelImageBase, baseStageOptions *BaseStageOptions) *DependenciesAfterSetupStage
type DependenciesBeforeInstallStage ¶
type DependenciesBeforeInstallStage struct {
*DependenciesStage
}
func GenerateDependenciesBeforeInstallStage ¶
func GenerateDependenciesBeforeInstallStage(imageBaseConfig *config.StapelImageBase, baseStageOptions *BaseStageOptions) *DependenciesBeforeInstallStage
type DependenciesBeforeSetupStage ¶
type DependenciesBeforeSetupStage struct {
*DependenciesStage
}
func GenerateDependenciesBeforeSetupStage ¶
func GenerateDependenciesBeforeSetupStage(imageBaseConfig *config.StapelImageBase, baseStageOptions *BaseStageOptions) *DependenciesBeforeSetupStage
type DependenciesStage ¶
type DependenciesStage struct {
*BaseStage
// contains filtered or unexported fields
}
func (*DependenciesStage) GetContentDependencies ¶
func (s *DependenciesStage) GetContentDependencies(_ context.Context, _ Conveyor, _ container_backend.BuildContextArchiver) (string, error)
GetContentDependencies identifies source and dependency images by their config names instead of their built stage IDs: the content of those images is folded into the anchor digest as a dependency input, and a stage ID changes on every rebuild of the referenced image.
func (*DependenciesStage) GetDependencies ¶
func (s *DependenciesStage) GetDependencies(ctx context.Context, c Conveyor, _ container_backend.ContainerBackend, _, _ *StageImage, _ container_backend.BuildContextArchiver) (string, error)
func (*DependenciesStage) PrepareImage ¶
func (s *DependenciesStage) PrepareImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevBuiltImage, stageImage *StageImage, buildContextArchive container_backend.BuildContextArchiver) error
type DockerRegistryApiStub ¶
type DockerRegistryApiStub struct {
docker_registry.GenericApiInterface
}
func NewDockerRegistryApiStub ¶
func NewDockerRegistryApiStub() *DockerRegistryApiStub
func (*DockerRegistryApiStub) GetRepoImageConfigFile ¶
func (dockerRegistry *DockerRegistryApiStub) GetRepoImageConfigFile(ctx context.Context, reference string) (*v1.ConfigFile, error)
type DockerRunArgs ¶
type DockerRunArgs struct {
// contains filtered or unexported fields
}
func NewDockerRunArgs ¶
type DockerStages ¶
type DockerStages struct {
// contains filtered or unexported fields
}
func NewDockerStages ¶
func NewDockerStages(dockerStages []instructions.Stage, dockerBuildArgsHash map[string]string, dockerMetaArgs []instructions.ArgCommand, dockerTargetStageIndex int) *DockerStages
func (*DockerStages) AddDockerStageEnv ¶
func (*DockerStages) DockerStageArgsHash ¶
func (ds *DockerStages) DockerStageArgsHash(dockerStageID int) map[string]string
func (*DockerStages) DockerStageEnvs ¶
func (ds *DockerStages) DockerStageEnvs(dockerStageID int) map[string]string
func (*DockerStages) ShlexProcessWordWithMetaArgs ¶
func (*DockerStages) ShlexProcessWordWithStageArgsAndEnvs ¶
func (ds *DockerStages) ShlexProcessWordWithStageArgsAndEnvs(dockerStageID int, value string) (string, error)
func (*DockerStages) ShlexProcessWordWithStageEnvs ¶
func (ds *DockerStages) ShlexProcessWordWithStageEnvs(dockerStageID int, value string) (string, error)
type FromStage ¶
type FromStage struct {
*BaseStage
// contains filtered or unexported fields
}
func GenerateFromStage ¶
func GenerateFromStage(imageBaseConfig *config.StapelImageBase, baseImageRepoId, imageCacheVersion string, baseStageOptions *BaseStageOptions) *FromStage
func (*FromStage) GetContentDependencies ¶
func (s *FromStage) GetContentDependencies(_ context.Context, _ Conveyor, _ container_backend.BuildContextArchiver) (string, error)
GetContentDependencies identifies the base image by its config name instead of its built stage ID: the base image's own content is folded into the anchor digest as a dependency input, and the stage ID changes on every rebuild.
func (*FromStage) GetDependencies ¶
func (s *FromStage) GetDependencies(_ context.Context, c Conveyor, _ container_backend.ContainerBackend, _, _ *StageImage, _ container_backend.BuildContextArchiver) (string, error)
func (*FromStage) HasPrevStage ¶
func (*FromStage) IsBuildable ¶
func (*FromStage) MutateImage ¶
func (s *FromStage) MutateImage(ctx context.Context, storage ImageMutatorPusher, prevBuiltImage, stageImage *StageImage) error
func (*FromStage) PrepareImage ¶
func (s *FromStage) PrepareImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevBuiltImage, stageImage *StageImage, _ container_backend.BuildContextArchiver) error
type FullDockerfileStage ¶
type FullDockerfileStage struct {
*DockerRunArgs
*DockerStages
*ContextChecksum
*BaseStage
// contains filtered or unexported fields
}
func GenerateFullDockerfileStage ¶
func GenerateFullDockerfileStage(dockerRunArgs *DockerRunArgs, dockerStages *DockerStages, contextChecksum *ContextChecksum, baseStageOptions *BaseStageOptions, dependencies []*config.Dependency, imageCacheVersion string) *FullDockerfileStage
func (*FullDockerfileStage) FetchDependencies ¶
func (s *FullDockerfileStage) FetchDependencies(_ context.Context, _ Conveyor, _ container_backend.ContainerBackend, _ docker_registry.GenericApiInterface) error
func (*FullDockerfileStage) GetContentDependencies ¶
func (s *FullDockerfileStage) GetContentDependencies(ctx context.Context, c Conveyor, _ container_backend.BuildContextArchiver) (string, error)
GetContentDependencies resolves dependency build args to stable placeholders instead of the built image names, tags and registry digests of the dependency images: their content is folded into the anchor digest as a dependency input, and those values change on every rebuild of the dependency image.
func (*FullDockerfileStage) GetDependencies ¶
func (s *FullDockerfileStage) GetDependencies(ctx context.Context, c Conveyor, _ container_backend.ContainerBackend, _, _ *StageImage, _ container_backend.BuildContextArchiver) (string, error)
func (*FullDockerfileStage) HasPrevStage ¶
func (s *FullDockerfileStage) HasPrevStage() bool
func (*FullDockerfileStage) IsStapelStage ¶
func (s *FullDockerfileStage) IsStapelStage() bool
func (*FullDockerfileStage) MutateImage ¶
func (s *FullDockerfileStage) MutateImage(_ context.Context, _ ImageMutatorPusher, _, _ *StageImage) error
func (*FullDockerfileStage) PrepareImage ¶
func (s *FullDockerfileStage) PrepareImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevBuiltImage, stageImage *StageImage, buildContextArchive container_backend.BuildContextArchiver) error
func (*FullDockerfileStage) SetupDockerImageBuilder ¶
func (s *FullDockerfileStage) SetupDockerImageBuilder(b stage_builder.DockerfileBuilderInterface, c Conveyor) error
func (*FullDockerfileStage) UsesBuildContext ¶
func (s *FullDockerfileStage) UsesBuildContext() bool
type GitArchiveStage ¶
type GitArchiveStage struct {
*GitStage
ArchivesDir string
ScriptsDir string
ContainerArchivesDir string
ContainerScriptsDir string
}
func NewGitArchiveStage ¶
func NewGitArchiveStage(gitArchiveStageOptions *NewGitArchiveStageOptions, baseStageOptions *BaseStageOptions) *GitArchiveStage
func (*GitArchiveStage) GetContentDependencies ¶
func (s *GitArchiveStage) GetContentDependencies(ctx context.Context, c Conveyor, buildContextArchive container_backend.BuildContextArchiver) (string, error)
GetContentDependencies checksums all git-tracked files for the content digest. This is the only git stage that contributes file content: GitCache and GitLatestPatch return empty context dependencies because their file changes are already covered here.
func (*GitArchiveStage) GetDependencies ¶
func (s *GitArchiveStage) GetDependencies(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevImage, prevBuiltImage *StageImage, buildContextArchive container_backend.BuildContextArchiver) (string, error)
TODO: 1.3 add git mapping type (dir, file, ...) to gitArchive stage digest
func (*GitArchiveStage) GetNextStageDependencies ¶
func (*GitArchiveStage) IsEmpty ¶
func (s *GitArchiveStage) IsEmpty(ctx context.Context, c Conveyor, stageImage *StageImage) (bool, error)
func (*GitArchiveStage) PrepareImage ¶
func (s *GitArchiveStage) PrepareImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevBuiltImage, stageImage *StageImage, buildContextArchive container_backend.BuildContextArchiver) error
type GitCacheStage ¶
type GitCacheStage struct {
*GitPatchStage
}
func NewGitCacheStage ¶
func NewGitCacheStage(gitPatchStageOptions *NewGitPatchStageOptions, baseStageOptions *BaseStageOptions) *GitCacheStage
func (*GitCacheStage) GetContentDependencies ¶
func (s *GitCacheStage) GetContentDependencies(ctx context.Context, c Conveyor, buildContextArchive container_backend.BuildContextArchiver) (string, error)
GetContentDependencies returns empty: all git file content is already checksummed by GitArchiveStage.GetContentDependencies.
func (*GitCacheStage) GetDependencies ¶
func (s *GitCacheStage) GetDependencies(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevImage, prevBuiltImage *StageImage, buildContextArchive container_backend.BuildContextArchiver) (string, error)
func (*GitCacheStage) GetNextStageDependencies ¶
func (*GitCacheStage) IsEmpty ¶
func (s *GitCacheStage) IsEmpty(ctx context.Context, c Conveyor, prevBuiltImage *StageImage) (bool, error)
type GitLatestPatchStage ¶
type GitLatestPatchStage struct {
*GitPatchStage
}
func NewGitLatestPatchStage ¶
func NewGitLatestPatchStage(gitPatchStageOptions *NewGitPatchStageOptions, baseStageOptions *BaseStageOptions) *GitLatestPatchStage
func (*GitLatestPatchStage) GetContentDependencies ¶
func (s *GitLatestPatchStage) GetContentDependencies(ctx context.Context, c Conveyor, buildContextArchive container_backend.BuildContextArchiver) (string, error)
GetContentDependencies returns empty: all git file content is already checksummed by GitArchiveStage.GetContentDependencies.
func (*GitLatestPatchStage) GetDependencies ¶
func (s *GitLatestPatchStage) GetDependencies(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevImage, prevBuiltImage *StageImage, buildContextArchive container_backend.BuildContextArchiver) (string, error)
func (*GitLatestPatchStage) GetNextStageDependencies ¶
func (*GitLatestPatchStage) IsEmpty ¶
func (s *GitLatestPatchStage) IsEmpty(ctx context.Context, c Conveyor, prevBuiltImage *StageImage) (bool, error)
IsEmpty for a content anchor is always false: even when the git patch is empty, the stage must still publish under the image content tag, so it goes through the normal build+push path (buildStage adds a UI note).
func (*GitLatestPatchStage) IsGitPatchEmpty ¶
func (s *GitLatestPatchStage) IsGitPatchEmpty(ctx context.Context, c Conveyor, prevBuiltImage *StageImage) (bool, error)
type GitMapping ¶
type GitMapping struct {
Name string
As string
Branch string
Tag string
Commit string
Add string
To string
Owner string
Group string
IncludePaths []string
ExcludePaths []string
StagesDependencies map[StageName][]string
ContainerPatchesDir string
ContainerArchivesDir string
ScriptsDir string
ContainerScriptsDir string
BaseCommitByPrevBuiltImageName map[string]string
// contains filtered or unexported fields
}
func NewGitMapping ¶
func NewGitMapping() *GitMapping
func (*GitMapping) AddGitCommitToImageLabels ¶
func (gm *GitMapping) AddGitCommitToImageLabels(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, stageImage *StageImage, commitInfo ImageCommitInfo)
func (*GitMapping) GetBaseCommitForPrevBuiltImage ¶
func (gm *GitMapping) GetBaseCommitForPrevBuiltImage(ctx context.Context, c Conveyor, prevBuiltImage *StageImage) (string, error)
func (*GitMapping) GetBuiltImageCommitInfo ¶
func (gm *GitMapping) GetBuiltImageCommitInfo(builtImageLabels map[string]string) (ImageCommitInfo, error)
func (*GitMapping) GetFullName ¶
func (gm *GitMapping) GetFullName() string
func (*GitMapping) GetLatestCommitInfo ¶
func (gm *GitMapping) GetLatestCommitInfo(ctx context.Context, c Conveyor) (ImageCommitInfo, error)
func (*GitMapping) GetParamshash ¶
func (gm *GitMapping) GetParamshash() string
func (*GitMapping) GetPatchContent ¶
func (gm *GitMapping) GetPatchContent(ctx context.Context, c Conveyor, prevBuiltImage *StageImage) (string, error)
func (*GitMapping) GitRepo ¶
func (gm *GitMapping) GitRepo() git_repo.GitRepo
func (*GitMapping) ImageGitCommitLabel ¶
func (gm *GitMapping) ImageGitCommitLabel() string
func (*GitMapping) IsLocal ¶
func (gm *GitMapping) IsLocal() bool
func (*GitMapping) IsPatchEmpty ¶
func (gm *GitMapping) IsPatchEmpty(ctx context.Context, c Conveyor, prevBuiltImage *StageImage) (bool, error)
func (*GitMapping) PrepareArchiveForImage ¶
func (gm *GitMapping) PrepareArchiveForImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, stageImage *StageImage) error
func (*GitMapping) PreparePatchForImage ¶
func (gm *GitMapping) PreparePatchForImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevBuiltImage, stageImage *StageImage) error
func (*GitMapping) SetGitRepo ¶
func (gm *GitMapping) SetGitRepo(gitRepo git_repo.GitRepo)
func (*GitMapping) StageDependenciesChecksum ¶
type GitPatchStage ¶
type GitPatchStage struct {
*GitStage
ScriptsDir string
ContainerPatchesDir string
ContainerArchivesDir string
ContainerScriptsDir string
}
func (*GitPatchStage) IsEmpty ¶
func (s *GitPatchStage) IsEmpty(ctx context.Context, c Conveyor, prevBuiltImage *StageImage) (bool, error)
func (*GitPatchStage) PrepareImage ¶
func (s *GitPatchStage) PrepareImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevBuiltImage, stageImage *StageImage, buildContextArchive container_backend.BuildContextArchiver) error
type GitRepoArchiveStub ¶
func NewGitRepoArchiveStub ¶
func NewGitRepoArchiveStub() *GitRepoArchiveStub
func (*GitRepoArchiveStub) GetFilePath ¶
func (archive *GitRepoArchiveStub) GetFilePath() string
type GitStage ¶
type GitStage struct {
*BaseStage
}
func (*GitStage) PrepareImage ¶
func (s *GitStage) PrepareImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevBuiltImage, stageImage *StageImage, buildContextArchive container_backend.BuildContextArchiver) error
type GiterminismInspectorStub ¶
type GiterminismInspectorStub struct {
giterminism_manager.Inspector
}
func NewGiterminismInspectorStub ¶
func NewGiterminismInspectorStub() *GiterminismInspectorStub
func (*GiterminismInspectorStub) InspectBuildContextFiles ¶
func (inspector *GiterminismInspectorStub) InspectBuildContextFiles(ctx context.Context, matcher path_matcher.PathMatcher) error
type GiterminismManagerStub ¶
type GiterminismManagerStub struct {
giterminism_manager.Interface
// contains filtered or unexported fields
}
func NewGiterminismManagerStub ¶
func NewGiterminismManagerStub(localGitRepo git_repo.GitRepo, inspector giterminism_manager.Inspector) *GiterminismManagerStub
func (*GiterminismManagerStub) Dev ¶
func (manager *GiterminismManagerStub) Dev() bool
func (*GiterminismManagerStub) HeadCommit ¶
func (manager *GiterminismManagerStub) HeadCommit(ctx context.Context) string
func (*GiterminismManagerStub) Inspector ¶
func (manager *GiterminismManagerStub) Inspector() giterminism_manager.Inspector
func (*GiterminismManagerStub) LocalGitRepo ¶
func (manager *GiterminismManagerStub) LocalGitRepo() git_repo.GitRepo
func (*GiterminismManagerStub) RelativeToGitProjectDir ¶
func (manager *GiterminismManagerStub) RelativeToGitProjectDir() string
type ImageCommitInfo ¶
type ImageCommitInfo struct {
Commit string
}
type ImageMutatorPusher ¶
type ImageMutatorPusher interface {
MutateAndPushImage(ctx context.Context, src, dest string, newConfig image.SpecConfig, stageImage container_backend.LegacyImageInterface) error
}
type ImageSpecStage ¶
type ImageSpecStage struct {
*BaseStage
// contains filtered or unexported fields
}
func GenerateImageSpecStage ¶
func GenerateImageSpecStage(imageSpec *config.ImageSpec, baseStageOptions *BaseStageOptions) *ImageSpecStage
func (*ImageSpecStage) GetContentDependencies ¶
func (s *ImageSpecStage) GetContentDependencies(ctx context.Context, c Conveyor, buildContextArchive container_backend.BuildContextArchiver) (string, error)
func (*ImageSpecStage) GetDependencies ¶
func (s *ImageSpecStage) GetDependencies(_ context.Context, _ Conveyor, _ container_backend.ContainerBackend, _, _ *StageImage, _ container_backend.BuildContextArchiver) (string, error)
func (*ImageSpecStage) IsBuildable ¶
func (s *ImageSpecStage) IsBuildable() bool
func (*ImageSpecStage) IsMutable ¶
func (s *ImageSpecStage) IsMutable() bool
func (*ImageSpecStage) MutateImage ¶
func (s *ImageSpecStage) MutateImage(ctx context.Context, storage ImageMutatorPusher, prevBuiltImage, stageImage *StageImage) error
func (*ImageSpecStage) PrepareImage ¶
func (s *ImageSpecStage) PrepareImage(ctx context.Context, _ Conveyor, _ container_backend.ContainerBackend, prevBuiltImage, stageImage *StageImage, _ container_backend.BuildContextArchiver) error
type InstallStage ¶
type InstallStage struct {
*UserWithGitPatchStage
}
func GenerateInstallStage ¶
func GenerateInstallStage(ctx context.Context, imageBaseConfig *config.StapelImageBase, gitPatchStageOptions *NewGitPatchStageOptions, baseStageOptions *BaseStageOptions) *InstallStage
func (*InstallStage) GetDependencies ¶
func (s *InstallStage) GetDependencies(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevImage, prevBuiltImage *StageImage, buildContextArchive container_backend.BuildContextArchiver) (string, error)
func (*InstallStage) PrepareImage ¶
func (s *InstallStage) PrepareImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevBuiltImage, stageImage *StageImage, buildContextArchive container_backend.BuildContextArchiver) error
type Interface ¶
type Interface interface {
Name() StageName
LogDetailedName() string
IsEmpty(ctx context.Context, c Conveyor, prevBuiltImage *StageImage) (bool, error)
IsBuildable() bool
IsMutable() bool
ExpandDependencies(ctx context.Context, c Conveyor, baseEnv map[string]string) error
FetchDependencies(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, dockerRegistry docker_registry.GenericApiInterface) error
GetDependencies(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevImage, prevBuiltImage *StageImage, buildContextArchive container_backend.BuildContextArchiver) (string, error)
GetNextStageDependencies(ctx context.Context, c Conveyor) (string, error)
GetContentDependencies(ctx context.Context, c Conveyor, buildContextArchive container_backend.BuildContextArchiver) (string, error)
PrepareImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevBuiltImage, stageImage *StageImage, buildContextArchive container_backend.BuildContextArchiver) error
PreRun(context.Context, Conveyor) error
SetDigest(digest string)
GetDigest() string
SetContentDigest(contentDigest string)
GetContentDigest() string
SetStageImage(*StageImage)
GetStageImage() *StageImage
SetGitMappings([]*GitMapping)
GetGitMappings() []*GitMapping
MutateImage(ctx context.Context, registry ImageMutatorPusher, prevBuiltImage, stageImage *StageImage) error
SelectSuitableStageDesc(context.Context, Conveyor, image.StageDescSet) (*image.StageDesc, error)
HasPrevStage() bool
IsStapelStage() bool
IsContentAnchor() bool
SetContentAnchor(bool)
UsesBuildContext() bool
SetMeta(meta *StageMeta)
GetMeta() *StageMeta
}
type LegacyContainerOptionsStub ¶
type LegacyContainerOptionsStub struct {
container_backend.LegacyContainerOptions
Env map[string]string
Labels map[string]string
}
func NewLegacyContainerOptionsStub ¶
func NewLegacyContainerOptionsStub() *LegacyContainerOptionsStub
func (*LegacyContainerOptionsStub) AddEnv ¶
func (opts *LegacyContainerOptionsStub) AddEnv(envs map[string]string)
func (*LegacyContainerOptionsStub) AddLabel ¶
func (opts *LegacyContainerOptionsStub) AddLabel(labels map[string]string)
type LegacyContainerStub ¶
type LegacyContainerStub struct {
container_backend.LegacyContainer
// contains filtered or unexported fields
}
func NewLegacyContainerStub ¶
func NewLegacyContainerStub() *LegacyContainerStub
func (*LegacyContainerStub) ServiceCommitChangeOptions ¶
func (c *LegacyContainerStub) ServiceCommitChangeOptions() container_backend.LegacyContainerOptions
type LegacyImageStub ¶
type LegacyImageStub struct {
container_backend.LegacyImageInterface
// contains filtered or unexported fields
}
func NewLegacyImageStub ¶
func NewLegacyImageStub() *LegacyImageStub
func (*LegacyImageStub) Container ¶
func (img *LegacyImageStub) Container() container_backend.LegacyContainer
func (*LegacyImageStub) GetBuildServiceLabels ¶
func (img *LegacyImageStub) GetBuildServiceLabels() map[string]string
type LocalGitRepoStub ¶
func NewLocalGitRepoStub ¶
func NewLocalGitRepoStub(headCommitHash string) *LocalGitRepoStub
func (*LocalGitRepoStub) GetOrCreateArchive ¶
func (repo *LocalGitRepoStub) GetOrCreateArchive(ctx context.Context, opts git_repo.ArchiveOptions) (git_repo.Archive, error)
func (*LocalGitRepoStub) GetOrCreateChecksum ¶
func (repo *LocalGitRepoStub) GetOrCreateChecksum(ctx context.Context, opts git_repo.ChecksumOptions) (string, error)
func (*LocalGitRepoStub) HeadCommitHash ¶
func (repo *LocalGitRepoStub) HeadCommitHash(ctx context.Context) (string, error)
type NewGitPatchStageOptions ¶
type ScratchImageStageStorage ¶
type ScratchImageStageStorage interface {
ImageMutatorPusher
PostManifest(ctx context.Context, ref string, opts container_backend.PostManifestOpts) error
}
ScratchImageStageStorage extends ImageMutatorPusher with PostManifest for creating empty scratch stage images.
type SetupStage ¶
type SetupStage struct {
*UserWithGitPatchStage
}
func GenerateSetupStage ¶
func GenerateSetupStage(ctx context.Context, imageBaseConfig *config.StapelImageBase, gitPatchStageOptions *NewGitPatchStageOptions, baseStageOptions *BaseStageOptions) *SetupStage
func (*SetupStage) GetDependencies ¶
func (s *SetupStage) GetDependencies(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevImage, prevBuiltImage *StageImage, buildContextArchive container_backend.BuildContextArchiver) (string, error)
func (*SetupStage) PrepareImage ¶
func (s *SetupStage) PrepareImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevBuiltImage, stageImage *StageImage, buildContextArchive container_backend.BuildContextArchiver) error
type StageImage ¶
type StageImage struct {
Image container_backend.LegacyImageInterface
Builder stage_builder.StageBuilderInterface
}
func NewStageImage ¶
func NewStageImage(containerBackend container_backend.ContainerBackend, baseImage string, image container_backend.LegacyImageInterface) *StageImage
type StageName ¶
type StageName string
const ( From StageName = "from" BeforeInstall StageName = "beforeInstall" DependenciesBeforeInstall StageName = "dependenciesBeforeInstall" GitArchive StageName = "gitArchive" Install StageName = "install" DependenciesAfterInstall StageName = "dependenciesAfterInstall" BeforeSetup StageName = "beforeSetup" DependenciesBeforeSetup StageName = "dependenciesBeforeSetup" Setup StageName = "setup" DependenciesAfterSetup StageName = "dependenciesAfterSetup" GitCache StageName = "gitCache" GitLatestPatch StageName = "gitLatestPatch" Dockerfile StageName = "dockerfile" ImageSpec StageName = "imageSpec" )
type UserWithGitPatchStage ¶
type UserWithGitPatchStage struct {
*UserStage
GitPatchStage *GitPatchStage
}
func (*UserWithGitPatchStage) GetContentDependencies ¶
func (s *UserWithGitPatchStage) GetContentDependencies(ctx context.Context, c Conveyor, buildContextArchive container_backend.BuildContextArchiver) (string, error)
GetContentDependencies returns only the builder checksum (shell commands from werf.yaml) without StageDependenciesChecksum. Git file checksums are already fully accounted for by GitArchiveStage.GetContentDependencies, which checksums all files.
func (*UserWithGitPatchStage) GetNextStageDependencies ¶
func (*UserWithGitPatchStage) PrepareImage ¶
func (s *UserWithGitPatchStage) PrepareImage(ctx context.Context, c Conveyor, cb container_backend.ContainerBackend, prevBuiltImage, stageImage *StageImage, buildContextArchive container_backend.BuildContextArchiver) error
func (*UserWithGitPatchStage) SelectSuitableStageDesc ¶
func (s *UserWithGitPatchStage) SelectSuitableStageDesc(ctx context.Context, c Conveyor, stageDescSet image.StageDescSet) (*image.StageDesc, error)
Source Files
¶
- base.go
- before_install.go
- before_setup.go
- conveyor.go
- dependencies.go
- dependencies_after_install.go
- dependencies_after_setup.go
- dependencies_before_install.go
- dependencies_before_setup.go
- dependencies_utils.go
- from.go
- full_dockerfile.go
- git.go
- git_archive.go
- git_cache.go
- git_latest_patch.go
- git_mapping.go
- git_patch.go
- image_spec.go
- install.go
- interface.go
- setup.go
- stage_image.go
- stubs.go
- user.go
- user_with_git_patch.go