build

package
v1.1.4 Latest Latest
Warning

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

Go to latest
Published: Mar 19, 2020 License: Apache-2.0 Imports: 35 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MaxStageNameLength = 22
)

Variables

This section is empty.

Functions

func ImageLogProcessStyle added in v1.1.0

func ImageLogProcessStyle(isArtifact bool) *logboek.Style

func ImageLogTagStyle added in v1.1.0

func ImageLogTagStyle(isArtifact bool) *logboek.Style

Types

type BasePhase added in v1.1.0

type BasePhase struct {
	Conveyor *Conveyor
}

type BuildAndPublishOptions

type BuildAndPublishOptions struct {
	BuildStagesOptions
	PublishImagesOptions
}

type BuildPhase added in v1.1.0

type BuildPhase struct {
	BasePhase

	PrevStage                  stage.Interface
	PrevNonEmptyStage          stage.Interface
	PrevImage                  *image.StageImage
	PrevBuiltImage             image.ImageInterface
	PrevNonEmptyStageImageSize int64

	BuildPhaseOptions
	// contains filtered or unexported fields
}

func NewBuildPhase added in v1.1.0

func NewBuildPhase(c *Conveyor, opts BuildPhaseOptions) *BuildPhase

func (*BuildPhase) AfterImageStages added in v1.1.0

func (phase *BuildPhase) AfterImageStages(img *Image) error

func (*BuildPhase) AfterImages added in v1.1.0

func (phase *BuildPhase) AfterImages() error

func (*BuildPhase) BeforeImageStages added in v1.1.0

func (phase *BuildPhase) BeforeImageStages(img *Image) error

func (*BuildPhase) BeforeImages added in v1.1.0

func (phase *BuildPhase) BeforeImages() error

func (*BuildPhase) ImageProcessingShouldBeStopped added in v1.1.0

func (phase *BuildPhase) ImageProcessingShouldBeStopped(img *Image) bool

func (*BuildPhase) Name added in v1.1.0

func (phase *BuildPhase) Name() string

func (*BuildPhase) OnImageStage added in v1.1.0

func (phase *BuildPhase) OnImageStage(img *Image, stg stage.Interface) (bool, error)

type BuildPhaseOptions added in v1.1.0

type BuildPhaseOptions struct {
	SignaturesOnly    bool
	ImageBuildOptions imagePkg.BuildOptions
	IntrospectOptions IntrospectOptions
}

type BuildStagesOptions

type BuildStagesOptions struct {
	ImageBuildOptions image.BuildOptions
	IntrospectOptions
}

type Conveyor

type Conveyor struct {
	StagesStorage      storage.StagesStorage
	StagesStorageCache storage.StagesStorageCache
	StorageLockManager storage.LockManager
	// contains filtered or unexported fields
}

func NewConveyor

func NewConveyor(werfConfig *config.WerfConfig, imageNamesToProcess []string, projectDir, baseTmpDir, sshAuthSock string) *Conveyor

func (*Conveyor) AppendOnTerminateFunc added in v1.1.0

func (c *Conveyor) AppendOnTerminateFunc(f func() error)

func (*Conveyor) BuildAndPublish

func (c *Conveyor) BuildAndPublish(stagesRepo string, imagesRepoManager ImagesRepoManager, opts BuildAndPublishOptions) error

func (*Conveyor) BuildStages

func (c *Conveyor) BuildStages(stageRepo string, opts BuildStagesOptions) error

func (*Conveyor) GetBuildingGitStage

func (c *Conveyor) GetBuildingGitStage(imageName string) stage.StageName

func (*Conveyor) GetGitRepoCache

func (c *Conveyor) GetGitRepoCache(gitRepoName string) *stage.GitRepoCache

func (*Conveyor) GetImage

func (c *Conveyor) GetImage(name string) *Image

func (*Conveyor) GetImageBySignature

func (c *Conveyor) GetImageBySignature(signature string) image.ImageInterface

imagesBySignature needed only for Build phase to detect that image object has already been prepared with build instructions. Image should never be prepared multiple times.

func (*Conveyor) GetImageInfoGetters added in v1.1.0

func (c *Conveyor) GetImageInfoGetters(configImages []*config.StapelImage, configImagesFromDockerfile []*config.ImageFromDockerfile, imagesRepoManager images_manager.ImagesRepoManager, commonTag string, tagStrategy tag_strategy.TagStrategy, withoutRegistry bool) []images_manager.ImageInfoGetter

func (*Conveyor) GetImageLastStageImageID added in v1.1.0

func (c *Conveyor) GetImageLastStageImageID(imageName string) string

func (*Conveyor) GetImageLastStageImageName added in v1.1.0

func (c *Conveyor) GetImageLastStageImageName(imageName string) string

func (*Conveyor) GetImageStagesSignature added in v1.1.0

func (c *Conveyor) GetImageStagesSignature(imageName string) string

func (*Conveyor) GetImageTmpDir

func (c *Conveyor) GetImageTmpDir(imageName string) string

func (*Conveyor) GetImportServer added in v1.1.0

func (c *Conveyor) GetImportServer(imageName string) (import_server.ImportServer, error)

func (*Conveyor) GetLocalGitRepo added in v1.1.0

func (c *Conveyor) GetLocalGitRepo() *git_repo.Local

func (*Conveyor) GetOrCreateStageImage added in v1.1.0

func (c *Conveyor) GetOrCreateStageImage(fromImage *image.StageImage, name string) *image.StageImage

func (*Conveyor) GetStageImage

func (c *Conveyor) GetStageImage(name string) *image.StageImage

func (*Conveyor) PublishImages

func (c *Conveyor) PublishImages(imagesRepoManager ImagesRepoManager, opts PublishImagesOptions) error

func (*Conveyor) SetBuildingGitStage

func (c *Conveyor) SetBuildingGitStage(imageName string, stageName stage.StageName)

func (*Conveyor) SetImageBySignature

func (c *Conveyor) SetImageBySignature(signature string, img image.ImageInterface)

func (*Conveyor) SetLocalGitRepo added in v1.1.0

func (c *Conveyor) SetLocalGitRepo(repo *git_repo.Local)

func (*Conveyor) SetStageImage added in v1.1.0

func (c *Conveyor) SetStageImage(stageImage *image.StageImage)

func (*Conveyor) ShouldBeBuilt

func (c *Conveyor) ShouldBeBuilt() error

func (*Conveyor) Terminate

func (c *Conveyor) Terminate() error

func (*Conveyor) UnsetStageImage added in v1.1.0

func (c *Conveyor) UnsetStageImage(name string)

type Image

type Image struct {
	// contains filtered or unexported fields
}

func (*Image) GetBaseImage

func (i *Image) GetBaseImage() *image.StageImage

func (*Image) GetLastNonEmptyStage added in v1.1.0

func (i *Image) GetLastNonEmptyStage() stage.Interface

func (*Image) GetLogName added in v1.1.0

func (i *Image) GetLogName() string

func (*Image) GetName

func (i *Image) GetName() string

func (*Image) GetStage

func (i *Image) GetStage(name stage.StageName) stage.Interface

func (*Image) GetStages

func (i *Image) GetStages() []stage.Interface

func (*Image) GetStagesSignature added in v1.1.0

func (i *Image) GetStagesSignature() string

func (*Image) LogDetailedName

func (i *Image) LogDetailedName() string

func (*Image) LogName

func (i *Image) LogName() string

func (*Image) LogProcessStyle added in v1.1.0

func (i *Image) LogProcessStyle() *logboek.Style

func (*Image) LogTagStyle added in v1.1.0

func (i *Image) LogTagStyle() *logboek.Style

func (*Image) PrepareBaseImage

func (i *Image) PrepareBaseImage(c *Conveyor) error

func (*Image) SetLastNonEmptyStage added in v1.1.0

func (i *Image) SetLastNonEmptyStage(stg stage.Interface)

func (*Image) SetStages

func (i *Image) SetStages(stages []stage.Interface)

func (*Image) SetStagesSignature added in v1.1.0

func (i *Image) SetStagesSignature(sig string)

func (*Image) SetupBaseImage

func (i *Image) SetupBaseImage(c *Conveyor)

type ImagesRepoManager

type ImagesRepoManager interface {
	ImagesRepo() string
	ImageRepo(imageName string) string
	ImageRepoTag(imageName, tag string) string
	ImageRepoWithTag(imageName, tag string) string
}

type IntrospectOptions

type IntrospectOptions struct {
	Targets []IntrospectTarget
}

func (*IntrospectOptions) ImageStageShouldBeIntrospected

func (opts *IntrospectOptions) ImageStageShouldBeIntrospected(imageName, stageName string) bool

type IntrospectTarget

type IntrospectTarget struct {
	ImageName string
	StageName string
}

type Phase

type Phase interface {
	Name() string
	BeforeImages() error
	AfterImages() error
	BeforeImageStages(img *Image) error
	OnImageStage(img *Image, stg stage.Interface) (bool, error)
	AfterImageStages(img *Image) error
	ImageProcessingShouldBeStopped(img *Image) bool
}

type PublishImagesOptions

type PublishImagesOptions struct {
	ImagesToPublish []string
	TagOptions
}

type PublishImagesPhase

type PublishImagesPhase struct {
	BasePhase
	ImagesToPublish      []string
	TagsByScheme         map[tag_strategy.TagStrategy][]string
	TagByStagesSignature bool
	ImageRepoManager     ImagesRepoManager
}

func NewPublishImagesPhase

func NewPublishImagesPhase(c *Conveyor, imagesRepoManager ImagesRepoManager, opts PublishImagesOptions) *PublishImagesPhase

func (*PublishImagesPhase) AfterImageStages added in v1.1.0

func (phase *PublishImagesPhase) AfterImageStages(img *Image) error

func (*PublishImagesPhase) AfterImages added in v1.1.0

func (phase *PublishImagesPhase) AfterImages() error

func (*PublishImagesPhase) BeforeImageStages added in v1.1.0

func (phase *PublishImagesPhase) BeforeImageStages(img *Image) error

func (*PublishImagesPhase) BeforeImages added in v1.1.0

func (phase *PublishImagesPhase) BeforeImages() error

func (*PublishImagesPhase) ImageProcessingShouldBeStopped added in v1.1.0

func (phase *PublishImagesPhase) ImageProcessingShouldBeStopped(img *Image) bool

func (*PublishImagesPhase) Name added in v1.1.0

func (phase *PublishImagesPhase) Name() string

func (*PublishImagesPhase) OnImageStage added in v1.1.0

func (phase *PublishImagesPhase) OnImageStage(img *Image, stg stage.Interface) (bool, error)

type ShouldBeBuiltPhase

type ShouldBeBuiltPhase struct {
	BasePhase

	IsBadDockerfileImageExists bool
	BadImages                  []*Image
	BadStagesByImage           map[string][]stage.Interface
}

func NewShouldBeBuiltPhase

func NewShouldBeBuiltPhase(c *Conveyor) *ShouldBeBuiltPhase

func (*ShouldBeBuiltPhase) AfterImageStages added in v1.1.0

func (phase *ShouldBeBuiltPhase) AfterImageStages(img *Image) error

func (*ShouldBeBuiltPhase) AfterImages added in v1.1.0

func (phase *ShouldBeBuiltPhase) AfterImages() error

func (*ShouldBeBuiltPhase) BeforeImageStages added in v1.1.0

func (phase *ShouldBeBuiltPhase) BeforeImageStages(img *Image) error

func (*ShouldBeBuiltPhase) BeforeImages added in v1.1.0

func (phase *ShouldBeBuiltPhase) BeforeImages() error

func (*ShouldBeBuiltPhase) ImageProcessingShouldBeStopped added in v1.1.0

func (phase *ShouldBeBuiltPhase) ImageProcessingShouldBeStopped(img *Image) bool

func (*ShouldBeBuiltPhase) Name added in v1.1.0

func (phase *ShouldBeBuiltPhase) Name() string

func (*ShouldBeBuiltPhase) OnImageStage added in v1.1.0

func (phase *ShouldBeBuiltPhase) OnImageStage(img *Image, stg stage.Interface) (bool, error)

type TagOptions

type TagOptions struct {
	CustomTags           []string
	TagsByGitTag         []string
	TagsByGitBranch      []string
	TagsByGitCommit      []string
	TagByStagesSignature bool
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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