containerimagebuilderpusher

package
v0.0.0-...-c008544 Latest Latest
Warning

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

Go to latest
Published: Mar 25, 2025 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BuildOptions

type BuildOptions struct {
	Image                   string
	ContextDir              string
	TempDir                 string
	DockerfileInfo          *runtime.ProcessorDockerfileInfo
	NoCache                 bool
	Pull                    bool
	NoBaseImagePull         bool
	BuildFlags              map[string]bool
	BuildArgs               map[string]string
	RegistryURL             string
	RepoName                string
	SecretName              string
	OutputImageFile         string
	BuildTimeoutSeconds     int64
	Affinity                *v1.Affinity
	NodeSelector            map[string]string
	NodeName                string
	PriorityClassName       string
	Tolerations             []v1.Toleration
	ReadinessTimeoutSeconds int
	FunctionServiceAccount  string
	BuilderServiceAccount   string
	SecurityContext         *v1.PodSecurityContext
	Resources               v1.ResourceRequirements

	BuildLogger logger.Logger
}

BuildOptions are options for building a container image

type BuilderPusher

type BuilderPusher interface {

	// GetKind returns the kind (docker/kaniko)
	GetKind() string

	// BuildAndPushContainerImage builds container image and pushes it into container registry
	BuildAndPushContainerImage(ctx context.Context, buildOptions *BuildOptions, namespace string) error

	// GetOnbuildStages get stages for multistage builds
	GetOnbuildStages(onbuildArtifacts []runtime.Artifact) ([]string, error)

	// TransformOnbuildArtifactPaths changes onbuild artifact paths depending on the type of the builder used
	TransformOnbuildArtifactPaths(onbuildArtifacts []runtime.Artifact) (map[string]string, error)

	// GetBaseImageRegistry returns base image registry
	GetBaseImageRegistry(registry string) string

	// GetOnbuildImageRegistry returns onbuild base registry
	GetOnbuildImageRegistry(registry string) string

	// GetRegistryKind returns registry kind (onCluster, offCluster or empty value if not specified)
	GetRegistryKind() string

	// GetDefaultRegistryCredentialsSecretName returns secret with credentials to push/pull from docker registry
	GetDefaultRegistryCredentialsSecretName() string
}

BuilderPusher is a builder of container images

func NewNop

func NewNop(logger logger.Logger, builderConfiguration *ContainerBuilderConfiguration) (BuilderPusher, error)

type ContainerBuilderConfiguration

type ContainerBuilderConfiguration struct {
	Kind                                 string
	BusyBoxImage                         string
	AWSCLIImage                          string
	RegistryProviderSecretName           string
	KanikoImage                          string
	KanikoImagePullPolicy                string
	JobPrefix                            string
	JobDeletionTimeout                   time.Duration
	DefaultRegistryCredentialsSecretName string
	DefaultBaseRegistryURL               string
	DefaultOnbuildRegistryURL            string
	RegistryKind                         string
	DefaultServiceAccount                string
	CacheRepo                            string
	InsecurePushRegistry                 bool
	InsecurePullRegistry                 bool
	PushImagesRetries                    int
	ImageFSExtractionRetries             int
}

func NewContainerBuilderConfiguration

func NewContainerBuilderConfiguration() (*ContainerBuilderConfiguration, error)

type Docker

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

func NewDocker

func NewDocker(logger logger.Logger, builderConfiguration *ContainerBuilderConfiguration) (*Docker, error)

func (*Docker) BuildAndPushContainerImage

func (d *Docker) BuildAndPushContainerImage(ctx context.Context, buildOptions *BuildOptions, namespace string) error

func (*Docker) GetBaseImageRegistry

func (d *Docker) GetBaseImageRegistry(registry string) string

func (*Docker) GetDefaultRegistryCredentialsSecretName

func (d *Docker) GetDefaultRegistryCredentialsSecretName() string

func (*Docker) GetKind

func (d *Docker) GetKind() string

func (*Docker) GetOnbuildImageRegistry

func (d *Docker) GetOnbuildImageRegistry(registry string) string

func (*Docker) GetOnbuildStages

func (d *Docker) GetOnbuildStages(onbuildArtifacts []runtime.Artifact) ([]string, error)

func (*Docker) GetRegistryKind

func (d *Docker) GetRegistryKind() string

func (*Docker) TransformOnbuildArtifactPaths

func (d *Docker) TransformOnbuildArtifactPaths(onbuildArtifacts []runtime.Artifact) (map[string]string, error)

type Kaniko

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

func NewKaniko

func NewKaniko(logger logger.Logger,
	kubeClientSet kubernetes.Interface,
	builderConfiguration *ContainerBuilderConfiguration) (*Kaniko, error)

func (*Kaniko) BuildAndPushContainerImage

func (k *Kaniko) BuildAndPushContainerImage(ctx context.Context,
	buildOptions *BuildOptions,
	namespace string) error

func (*Kaniko) GetBaseImageRegistry

func (k *Kaniko) GetBaseImageRegistry(registry string) string

func (*Kaniko) GetDefaultRegistryCredentialsSecretName

func (k *Kaniko) GetDefaultRegistryCredentialsSecretName() string

func (*Kaniko) GetKind

func (k *Kaniko) GetKind() string

func (*Kaniko) GetOnbuildImageRegistry

func (k *Kaniko) GetOnbuildImageRegistry(registry string) string

func (*Kaniko) GetOnbuildStages

func (k *Kaniko) GetOnbuildStages(onbuildArtifacts []runtime.Artifact) ([]string, error)

func (*Kaniko) GetRegistryKind

func (k *Kaniko) GetRegistryKind() string

func (*Kaniko) TransformOnbuildArtifactPaths

func (k *Kaniko) TransformOnbuildArtifactPaths(onbuildArtifacts []runtime.Artifact) (map[string]string, error)

type Nop

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

func (Nop) BuildAndPushContainerImage

func (n Nop) BuildAndPushContainerImage(ctx context.Context, buildOptions *BuildOptions, namespace string) error

func (Nop) GetBaseImageRegistry

func (n Nop) GetBaseImageRegistry(registry string) string

func (Nop) GetDefaultRegistryCredentialsSecretName

func (n Nop) GetDefaultRegistryCredentialsSecretName() string

func (Nop) GetKind

func (n Nop) GetKind() string

func (Nop) GetOnbuildImageRegistry

func (n Nop) GetOnbuildImageRegistry(registry string) string

func (Nop) GetOnbuildStages

func (n Nop) GetOnbuildStages(onbuildArtifacts []runtime.Artifact) ([]string, error)

func (Nop) GetRegistryKind

func (n Nop) GetRegistryKind() string

func (Nop) TransformOnbuildArtifactPaths

func (n Nop) TransformOnbuildArtifactPaths(onbuildArtifacts []runtime.Artifact) (map[string]string, error)

Jump to

Keyboard shortcuts

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