pack

package module
v0.12.0 Latest Latest
Warning

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

Go to latest
Published: Jul 7, 2020 License: Apache-2.0 Imports: 40 Imported by: 7

README

pack - Buildpack CLI

Build results Go Report Card codecov GoDoc GitHub license Slack

pack makes it easy for...

  • App Developers to use buildpacks to convert code into runnable images.
  • Buildpack Authors to develop and package buildpacks for distribution.
  • Operators to package buildpacks for distribution and maintain applications.

Usage

Getting Started

Get started by running through our tutorial: An App’s Brief Journey from Source to Image

Contributing

  • CONTRIBUTING - Information on how to contribute, including the pull request process.
  • DEVELOPMENT - Further detail to help you during the development process.

Specifications

pack is a CLI implementation of the Platform Interface Specification for Cloud Native Buildpacks.

To learn more about the details, check out the specs repository.

Documentation

Index

Constants

View Source
const (
	FormatImage = "image"
	FormatFile  = "file"
)

Variables

View Source
var (
	// Version is the version of `pack`. It is injected at compile time.
	Version = "0.0.0"
)

Functions

This section is empty.

Types

type BuildOptions added in v0.6.0

type BuildOptions struct {
	Image              string // required
	Builder            string // required
	Registry           string
	AppPath            string              // defaults to current working directory
	RunImage           string              // defaults to the best mirror from the builder metadata or AdditionalMirrors
	AdditionalMirrors  map[string][]string // only considered if RunImage is not provided
	Env                map[string]string
	Publish            bool
	NoPull             bool
	ClearCache         bool
	TrustBuilder       bool
	Buildpacks         []string
	ProxyConfig        *ProxyConfig // defaults to  environment proxy vars
	ContainerConfig    ContainerConfig
	DefaultProcessType string
	FileFilter         func(string) bool
}

type BuilderInfo added in v0.6.0

type BuilderInfo struct {
	Description     string
	Stack           string
	Mixins          []string
	RunImage        string
	RunImageMirrors []string
	Buildpacks      []dist.BuildpackInfo
	Order           dist.Order
	Lifecycle       builder.LifecycleDescriptor
	CreatedBy       builder.CreatorMetadata
}

type Client added in v0.6.0

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

func NewClient added in v0.6.0

func NewClient(opts ...ClientOption) (*Client, error)

func (*Client) Build added in v0.6.0

func (c *Client) Build(ctx context.Context, opts BuildOptions) error

func (*Client) CreateBuilder added in v0.6.0

func (c *Client) CreateBuilder(ctx context.Context, opts CreateBuilderOptions) error

CreateBuilder creates a builder

func (*Client) InspectBuilder added in v0.6.0

func (c *Client) InspectBuilder(name string, daemon bool) (*BuilderInfo, error)

func (*Client) InspectImage added in v0.6.0

func (c *Client) InspectImage(name string, daemon bool) (*ImageInfo, error)

func (*Client) PackageBuildpack added in v0.9.0

func (c *Client) PackageBuildpack(ctx context.Context, opts PackageBuildpackOptions) error

PackageBuildpack packages buildpack(s) into an image or file

func (*Client) Rebase added in v0.6.0

func (c *Client) Rebase(ctx context.Context, opts RebaseOptions) error

type ClientOption added in v0.6.0

type ClientOption func(c *Client)

func WithCacheDir deprecated added in v0.6.0

func WithCacheDir(path string) ClientOption

WithCacheDir supply your own cache directory.

Deprecated: use WithDownloader instead.

func WithDockerClient added in v0.6.0

func WithDockerClient(docker dockerClient.CommonAPIClient) ClientOption

WithDockerClient supply your own docker client.

func WithDownloader added in v0.6.0

func WithDownloader(d Downloader) ClientOption

WithDownloader supply your own downloader.

func WithExperimental added in v0.11.0

func WithExperimental(experimental bool) ClientOption

WithExperimental sets whether experimental features should be enabled

func WithFetcher added in v0.6.0

func WithFetcher(f ImageFetcher) ClientOption

WithFetcher supply your own fetcher.

func WithImageFactory added in v0.6.0

func WithImageFactory(f ImageFactory) ClientOption

WithImageFactory supply your own image factory.

func WithLogger added in v0.6.0

func WithLogger(l logging.Logger) ClientOption

WithLogger supply your own logger.

type ContainerConfig added in v0.6.0

type ContainerConfig struct {
	Network string
	Volumes []string
}

type CreateBuilderOptions added in v0.6.0

type CreateBuilderOptions struct {
	BuilderName string
	Config      pubbldr.Config
	Publish     bool
	NoPull      bool
	Registry    string
}

CreateBuilderOptions are options passed to CreateBuilder

type Downloader added in v0.6.0

type Downloader interface {
	Download(ctx context.Context, pathOrURI string) (blob.Blob, error)
}

type ExperimentError added in v0.11.0

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

ExperimentError denotes that an experimental feature was trying to be used without experimental features enabled.

func NewExperimentError added in v0.11.0

func NewExperimentError(msg string) ExperimentError

func (ExperimentError) Error added in v0.11.0

func (ee ExperimentError) Error() string

type ImageFactory added in v0.6.0

type ImageFactory interface {
	NewImage(repoName string, local bool) (imgutil.Image, error)
}

type ImageFetcher added in v0.6.0

type ImageFetcher interface {
	// Fetch fetches an image by resolving it both remotely and locally depending on provided parameters.
	// If daemon is true, it will look return a `local.Image`. Pull, applicable only when daemon is true, will
	// attempt to pull a remote image first.
	Fetch(ctx context.Context, name string, daemon, pull bool) (imgutil.Image, error)
}

type ImageInfo added in v0.6.0

type ImageInfo struct {
	StackID    string
	Buildpacks []lifecycle.Buildpack
	Base       lifecycle.RunImageMetadata
	BOM        []lifecycle.BOMEntry
	Stack      lifecycle.StackMetadata
	Processes  ProcessDetails
}

type Lifecycle added in v0.6.0

type Lifecycle interface {
	Execute(ctx context.Context, opts build.LifecycleOptions) error
}

type PackageBuildpackOptions added in v0.9.0

type PackageBuildpackOptions struct {
	Name    string
	Format  string
	Config  pubbldpkg.Config
	Publish bool
	NoPull  bool
}

PackageBuildpackOptions are configuration options and metadata you can pass into PackageBuildpack

type ProcessDetails added in v0.6.0

type ProcessDetails struct {
	DefaultProcess *launch.Process
	OtherProcesses []launch.Process
}

type ProxyConfig added in v0.6.0

type ProxyConfig struct {
	HTTPProxy  string
	HTTPSProxy string
	NoProxy    string
}

type RebaseOptions added in v0.6.0

type RebaseOptions struct {
	RepoName          string
	Publish           bool
	SkipPull          bool
	RunImage          string
	AdditionalMirrors map[string][]string
}

type SoftError added in v0.11.0

type SoftError struct{}

SoftError is an error that is not intended to be displayed.

func NewSoftError added in v0.11.0

func NewSoftError() SoftError

func (SoftError) Error added in v0.11.0

func (se SoftError) Error() string

Directories

Path Synopsis
cmd
internal
api
builder/testmocks
Package testmocks is a generated GoMock package.
Package testmocks is a generated GoMock package.
commands/testmocks
Package testmocks is a generated GoMock package.
Package testmocks is a generated GoMock package.
dist/testmocks
Package testmocks is a generated GoMock package.
Package testmocks is a generated GoMock package.
logging
Package logging implements the logger for the pack CLI.
Package logging implements the logger for the pack CLI.
Package logging defines the minimal interface that loggers must support to be used by pack.
Package logging defines the minimal interface that loggers must support to be used by pack.
Package testmocks is a generated GoMock package.
Package testmocks is a generated GoMock package.
tools module

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL
JackTT - Gopher 🇻🇳