builder

package
v0.10.1 Latest Latest
Warning

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

Go to latest
Published: Nov 20, 2025 License: Apache-2.0 Imports: 16 Imported by: 4

Documentation

Index

Constants

View Source
const Type pluginType = "builder"

Variables

View Source
var ErrArgumentFormat = errors.New("invalid argument format")
View Source
var ErrSSHAgentFormat = errors.New("invalid ssh agent format")
View Source
var ErrUnexpectedMapType = errors.New("unexpected map type for stdio streaming server")

Functions

This section is empty.

Types

type BuildArgument added in v0.10.0

type BuildArgument struct {
	Key   string
	Value string
}

func BuildArgumentFromProto added in v0.10.0

func BuildArgumentFromProto(b *api.BuildArgument) BuildArgument

func BuildArgumentFromSpec added in v0.10.0

func BuildArgumentFromSpec(spec string) (BuildArgument, error)

func (BuildArgument) ToProto added in v0.10.0

func (b BuildArgument) ToProto() *api.BuildArgument

type BuildArgumentsConfig added in v0.10.0

type BuildArgumentsConfig []BuildArgument

func BuildArgumentsConfigFromProto added in v0.10.0

func BuildArgumentsConfigFromProto(b []*api.BuildArgument) BuildArgumentsConfig

func MergeBuildArgumentsConfig added in v0.10.0

func MergeBuildArgumentsConfig(first, second BuildArgumentsConfig) BuildArgumentsConfig

func (BuildArgumentsConfig) ToProto added in v0.10.0

func (b BuildArgumentsConfig) ToProto() []*api.BuildArgument

type BuildConfig added in v0.10.0

type BuildConfig struct {
	ImageName        string
	Context          string
	Dockerfile       string
	InlineDockerfile []string

	Arguments BuildArgumentsConfig
	Secrets   BuildSecretsConfig
	SSHAgents SSHAgentConfig

	NoCache      bool
	ForceRebuild bool
	ForcePull    bool

	Dependencies []string
}

func BuildConfigFromProto added in v0.10.0

func BuildConfigFromProto(b *api.BuildConfig) BuildConfig

func EmptyBuildConfig added in v0.10.0

func EmptyBuildConfig() BuildConfig

func MergeBuildConfig added in v0.10.0

func MergeBuildConfig(first, second BuildConfig) BuildConfig

func (BuildConfig) ToProto added in v0.10.0

func (b BuildConfig) ToProto() *api.BuildConfig

type BuildSecret added in v0.10.0

type BuildSecret struct {
	ID   string
	Path string
}

func BuildSecretFromProto added in v0.10.0

func BuildSecretFromProto(b *api.BuildSecret) BuildSecret

func (BuildSecret) ToProto added in v0.10.0

func (b BuildSecret) ToProto() *api.BuildSecret

type BuildSecretsConfig added in v0.10.0

type BuildSecretsConfig []BuildSecret

func BuildSecretsConfigFromProto added in v0.10.0

func BuildSecretsConfigFromProto(b []*api.BuildSecret) BuildSecretsConfig

func MergeBuildSecretsConfig added in v0.10.0

func MergeBuildSecretsConfig(first, second BuildSecretsConfig) BuildSecretsConfig

func (BuildSecretsConfig) ToProto added in v0.10.0

func (b BuildSecretsConfig) ToProto() []*api.BuildSecret

type Client added in v0.10.0

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

func NewGRPCClient

func NewGRPCClient(conn grpc.ClientConnInterface) *Client

func (*Client) Cleanup added in v0.10.0

func (c *Client) Cleanup()

func (*Client) CreateImage added in v0.10.0

func (c *Client) CreateImage(config BuildConfig, stream *plugin.StreamConfig) (string, error)

func (*Client) Init added in v0.10.0

func (c *Client) Init() (plugin.Config, error)

func (*Client) Metadata added in v0.10.0

func (c *Client) Metadata() plugin.Metadata

func (*Client) Type added in v0.10.0

func (c *Client) Type() plugin.Type

type ImageBuilder

type ImageBuilder interface {
	plugin.Plugin

	CreateImage(config BuildConfig, streamConfig *plugin.StreamConfig) (string, error)
}

func GetByName

func GetByName(m plugin.Manager, name string) (ImageBuilder, error)

type SSHAgent added in v0.10.0

type SSHAgent struct {
	ID           string
	IdentityFile string
}

func ParseSSHAgent added in v0.10.0

func ParseSSHAgent(spec string) (SSHAgent, error)

func SSHAgentFromProto added in v0.10.0

func SSHAgentFromProto(s *api.SshAgent) SSHAgent

func (SSHAgent) ToProto added in v0.10.0

func (s SSHAgent) ToProto() *api.SshAgent

type SSHAgentConfig added in v0.10.0

type SSHAgentConfig []SSHAgent

func MergeSSHAgentConfig added in v0.10.0

func MergeSSHAgentConfig(first, second SSHAgentConfig) SSHAgentConfig

func SSHAgentConfigFromProto added in v0.10.0

func SSHAgentConfigFromProto(b []*api.SshAgent) SSHAgentConfig

func (SSHAgentConfig) ToProto added in v0.10.0

func (s SSHAgentConfig) ToProto() []*api.SshAgent

type Server added in v0.10.0

type Server struct {
	pluginapi.UnsafePluginServer
	api.UnsafeBuilderPluginServer

	stdio.OutputStreamingPluginServer
	// contains filtered or unexported fields
}

func NewGRPCServer

func NewGRPCServer(impl ImageBuilder) *Server

func (*Server) CreateImage added in v0.10.0

func (s *Server) CreateImage(_ context.Context, request *api.CreateImageRequest) (*api.CreateImageResponse, error)

func (*Server) GetPluginMetadata added in v0.10.0

func (s *Server) GetPluginMetadata(_ context.Context, _ *empty.Empty) (*pluginapi.GetPluginMetadataResponse, error)

func (*Server) InitPlugin added in v0.10.0

func (*Server) ResetPlugin added in v0.10.0

func (s *Server) ResetPlugin(_ context.Context, _ *empty.Empty) (*empty.Empty, error)

Jump to

Keyboard shortcuts

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