build

package
v0.0.0-...-fa68d88 Latest Latest
Warning

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

Go to latest
Published: Nov 8, 2023 License: BSD-3-Clause Imports: 17 Imported by: 0

Documentation

Index

Constants

View Source
const (
	DefaultTsuruPlatformWorkingDir = "/home/application/current"
	ProcfileName                   = "Procfile"
)

Variables

View Source
var (
	TsuruYamlNames  = []string{"tsuru.yml", "tsuru.yaml", "app.yml", "app.yaml"}
	TsuruConfigDirs = []string{DefaultTsuruPlatformWorkingDir, "/app/user", "/"}
)

Functions

func BuildContainerfile

func BuildContainerfile(p BuildContainerfileParams) (string, error)

func ExtractTsuruAppFilesFromAppSourceContext

func ExtractTsuruAppFilesFromAppSourceContext(ctx context.Context, r io.Reader) (*pb.TsuruConfig, error)

func ExtractTsuruAppFilesFromContainerImageTarball

func ExtractTsuruAppFilesFromContainerImageTarball(ctx context.Context, r io.Reader, workingDir string) (*pb.TsuruConfig, error)

func IsProcfile

func IsProcfile(filename string) bool

func IsTsuruYaml

func IsTsuruYaml(filename string) bool

func SortExposedPorts

func SortExposedPorts(ports map[string]struct{}) []string

Types

type BuildContainerfileParams

type BuildContainerfileParams struct {
	Image      string
	BuildHooks []string
}

type BuildResponseOutputWriter

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

func (*BuildResponseOutputWriter) Close

func (w *BuildResponseOutputWriter) Close() error

func (*BuildResponseOutputWriter) Fd

func (*BuildResponseOutputWriter) Name

func (*BuildResponseOutputWriter) Read

func (w *BuildResponseOutputWriter) Read(p []byte) (int, error)

func (*BuildResponseOutputWriter) Write

func (w *BuildResponseOutputWriter) Write(p []byte) (int, error)

type Builder

type Builder interface {
	Build(ctx context.Context, r *pb.BuildRequest, w io.Writer) (*pb.TsuruConfig, error)
}

type ProcfileCandidates

type ProcfileCandidates map[string]string

func (ProcfileCandidates) Pick

func (c ProcfileCandidates) Pick(workingDir string) string

type Server

type Server struct {
	*pb.UnimplementedBuildServer
	// contains filtered or unexported fields
}

func NewServer

func NewServer(b Builder) *Server

func (*Server) Build

func (s *Server) Build(req *pb.BuildRequest, stream pb.Build_BuildServer) error

type TsuruYamlCandidates

type TsuruYamlCandidates map[string]string

func (TsuruYamlCandidates) Pick

func (c TsuruYamlCandidates) Pick(workingDir string) string

type TsuruYamlData

type TsuruYamlData struct {
	Hooks       *TsuruYamlHooks            `json:"hooks,omitempty" bson:",omitempty"`
	Healthcheck *TsuruYamlHealthcheck      `json:"healthcheck,omitempty" bson:",omitempty"`
	Kubernetes  *TsuruYamlKubernetesConfig `json:"kubernetes,omitempty" bson:",omitempty"`
}

type TsuruYamlHealthcheck

type TsuruYamlHealthcheck struct {
	Headers              map[string]string `json:"headers,omitempty" bson:",omitempty"`
	Path                 string            `json:"path"`
	Method               string            `json:"method"`
	Scheme               string            `json:"scheme"`
	Match                string            `json:"match,omitempty" bson:",omitempty"`
	RouterBody           string            `json:"router_body,omitempty" yaml:"router_body" bson:"router_body,omitempty"`
	Command              []string          `json:"command,omitempty" bson:",omitempty"`
	Status               int               `json:"status"`
	AllowedFailures      int               `json:"allowed_failures,omitempty" yaml:"allowed_failures" bson:"allowed_failures,omitempty"`
	IntervalSeconds      int               `json:"interval_seconds,omitempty" yaml:"interval_seconds" bson:"interval_seconds,omitempty"`
	TimeoutSeconds       int               `json:"timeout_seconds,omitempty" yaml:"timeout_seconds" bson:"timeout_seconds,omitempty"`
	DeployTimeoutSeconds int               `json:"deploy_timeout_seconds,omitempty" yaml:"deploy_timeout_seconds" bson:"deploy_timeout_seconds,omitempty"`
	UseInRouter          bool              `json:"use_in_router,omitempty" yaml:"use_in_router" bson:"use_in_router,omitempty"`
	ForceRestart         bool              `json:"force_restart,omitempty" yaml:"force_restart" bson:"force_restart,omitempty"`
}

type TsuruYamlHooks

type TsuruYamlHooks struct {
	Restart TsuruYamlRestartHooks `json:"restart" bson:",omitempty"`
	Build   []string              `json:"build" bson:",omitempty"`
}

type TsuruYamlKubernetesConfig

type TsuruYamlKubernetesConfig struct {
	Groups map[string]TsuruYamlKubernetesGroup `json:"groups,omitempty"`
}

func (*TsuruYamlKubernetesConfig) DeepCopy

func (*TsuruYamlKubernetesConfig) DeepCopyInto

type TsuruYamlKubernetesGroup

type TsuruYamlKubernetesGroup map[string]TsuruYamlKubernetesProcessConfig

type TsuruYamlKubernetesProcessConfig

type TsuruYamlKubernetesProcessConfig struct {
	Ports []TsuruYamlKubernetesProcessPortConfig `json:"ports"`
}

type TsuruYamlKubernetesProcessPortConfig

type TsuruYamlKubernetesProcessPortConfig struct {
	Name       string `json:"name,omitempty"`
	Protocol   string `json:"protocol,omitempty"`
	Port       int    `json:"port,omitempty"`
	TargetPort int    `json:"target_port,omitempty"`
}

type TsuruYamlRestartHooks

type TsuruYamlRestartHooks struct {
	Before []string `json:"before" bson:",omitempty"`
	After  []string `json:"after" bson:",omitempty"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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