push

package
v3.0.0+incompatible Latest Latest
Warning

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

Go to latest
Published: May 1, 2018 License: MIT Imports: 23 Imported by: 0

Documentation

Overview

Package pusher handles pushing to individual Cloud Foundry instances.

Index

Constants

View Source
const TemporaryNameSuffix = "-new-build-"

TemporaryNameSuffix is used when deploying the new application in order to not overide the existing application name.

Variables

This section is empty.

Functions

func NewArtifactRetrievalFailureEventBinding

func NewArtifactRetrievalFailureEventBinding(handler func(event ArtifactRetrievalFailureEvent) error) interfaces.Binding

func NewArtifactRetrievalStartEventBinding

func NewArtifactRetrievalStartEventBinding(handler func(event ArtifactRetrievalStartEvent) error) interfaces.Binding

func NewArtifactRetrievalSuccessEventBinding

func NewArtifactRetrievalSuccessEventBinding(handler func(event ArtifactRetrievalSuccessEvent) error) interfaces.Binding

func NewDeployFailureEventBinding

func NewDeployFailureEventBinding(handler func(event DeployFailureEvent) error) interfaces.Binding

func NewDeployFinishedEventBinding

func NewDeployFinishedEventBinding(handler func(event DeployFinishedEvent) error) interfaces.Binding

func NewDeployStartEventBinding

func NewDeployStartEventBinding(handler func(event DeployStartedEvent) error) interfaces.Binding

func NewDeploySuccessEventBinding

func NewDeploySuccessEventBinding(handler func(event DeploySuccessEvent) error) interfaces.Binding

func NewPushFinishedEventBinding

func NewPushFinishedEventBinding(handler func(event PushFinishedEvent) error) interfaces.Binding

func NewPushStartedEventBinding

func NewPushStartedEventBinding(handler func(event PushStartedEvent) error) interfaces.Binding

Types

type ArtifactRetrievalFailureEvent

type ArtifactRetrievalFailureEvent struct {
	CFContext   interfaces.CFContext
	Auth        interfaces.Authorization
	Environment structs.Environment
	Response    io.ReadWriter
	Data        map[string]interface{}
	Manifest    string
	ArtifactURL string
}

func (ArtifactRetrievalFailureEvent) Name

type ArtifactRetrievalStartEvent

type ArtifactRetrievalStartEvent struct {
	CFContext   interfaces.CFContext
	Auth        interfaces.Authorization
	Environment structs.Environment
	Response    io.ReadWriter
	Data        map[string]interface{}
	Manifest    string
	ArtifactURL string
}

func (ArtifactRetrievalStartEvent) Name

type ArtifactRetrievalSuccessEvent

type ArtifactRetrievalSuccessEvent struct {
	CFContext            interfaces.CFContext
	Auth                 interfaces.Authorization
	Environment          structs.Environment
	Response             io.ReadWriter
	Data                 map[string]interface{}
	Manifest             string
	ArtifactURL          string
	AppPath              string
	EnvironmentVariables map[string]string
}

func (ArtifactRetrievalSuccessEvent) Name

type DeployFailureEvent

type DeployFailureEvent struct {
	CFContext   interfaces.CFContext
	Body        io.Reader
	ContentType string
	Environment structs.Environment
	Auth        interfaces.Authorization
	Response    io.ReadWriter
	Data        map[string]interface{}
	Error       error
}

func (DeployFailureEvent) Name

func (d DeployFailureEvent) Name() string

type DeployFinishedEvent

type DeployFinishedEvent struct {
	CFContext   interfaces.CFContext
	Body        io.Reader
	ContentType string
	Environment structs.Environment
	Auth        interfaces.Authorization
	Response    io.ReadWriter
	Data        map[string]interface{}
}

func (DeployFinishedEvent) Name

func (d DeployFinishedEvent) Name() string

type DeployStartedEvent

type DeployStartedEvent struct {
	CFContext   interfaces.CFContext
	ArtifactURL string
	Body        io.Reader
	ContentType string
	Environment structs.Environment
	Auth        interfaces.Authorization
	Response    io.ReadWriter
	Data        map[string]interface{}
}

func (DeployStartedEvent) Name

func (d DeployStartedEvent) Name() string

type DeploySuccessEvent

type DeploySuccessEvent struct {
	CFContext           interfaces.CFContext
	Body                io.Reader
	ContentType         string
	Environment         structs.Environment
	Auth                interfaces.Authorization
	Response            io.ReadWriter
	Data                map[string]interface{}
	HealthCheckEndpoint string
	ArtifactURL         string
}

func (DeploySuccessEvent) Name

func (d DeploySuccessEvent) Name() string

type PushController

type PushController struct {
	Deployer           I.Deployer
	SilentDeployer     I.Deployer
	Log                I.Logger
	Config             config.Config
	EventManager       I.EventManager
	ErrorFinder        I.ErrorFinder
	PushManagerFactory I.PushManagerFactory
}

func (*PushController) RunDeployment

func (c *PushController) RunDeployment(deployment *I.Deployment, response *bytes.Buffer) (deployResponse I.DeployResponse)

PUSH specific

type PushFinishedEvent

type PushFinishedEvent struct {
	CFContext           interfaces.CFContext
	Auth                interfaces.Authorization
	Response            io.ReadWriter
	AppPath             string
	FoundationURL       string
	TempAppWithUUID     string
	Manifest            string
	Data                map[string]interface{}
	Courier             interfaces.Courier
	HealthCheckEndpoint string
}

func (PushFinishedEvent) Name

func (d PushFinishedEvent) Name() string

type PushManager

type PushManager struct {
	CourierCreator       courierCreator
	EventManager         I.EventManager
	Logger               logger.DeploymentLogger
	Fetcher              I.Fetcher
	DeployEventData      S.DeployEventData
	FileSystemCleaner    fileSystemCleaner
	CFContext            I.CFContext
	Auth                 I.Authorization
	Environment          S.Environment
	EnvironmentVariables map[string]string
}

func (PushManager) CleanUp

func (a PushManager) CleanUp()

func (PushManager) Create

func (a PushManager) Create(environment S.Environment, response io.ReadWriter, foundationURL string) (I.Action, error)

func (PushManager) ExecuteError

func (a PushManager) ExecuteError(executeErrors []error) error

func (PushManager) InitiallyError

func (a PushManager) InitiallyError(initiallyErrors []error) error

func (PushManager) OnFinish

func (a PushManager) OnFinish(env S.Environment, response io.ReadWriter, err error) I.DeployResponse

func (PushManager) OnStart

func (a PushManager) OnStart() error

func (*PushManager) SetUp

func (a *PushManager) SetUp() error

func (PushManager) SuccessError

func (a PushManager) SuccessError(successErrors []error) error

func (PushManager) UndoError

func (a PushManager) UndoError(executeErrors, undoErrors []error) error

type PushStartedEvent

type PushStartedEvent struct {
	CFContext            interfaces.CFContext
	Body                 io.Reader
	ContentType          string
	Environment          structs.Environment
	Auth                 interfaces.Authorization
	Response             io.ReadWriter
	Data                 map[string]interface{}
	Instances            uint16
	EnvironmentVariables map[string]string
	Manifest             string
}

func (PushStartedEvent) Name

func (d PushStartedEvent) Name() string

type Pusher

type Pusher struct {
	Courier        I.Courier
	DeploymentInfo S.DeploymentInfo
	EventManager   I.EventManager
	Response       io.ReadWriter
	Log            I.Logger
	FoundationURL  string
	AppPath        string
	Environment    S.Environment
	Fetcher        I.Fetcher
	CFContext      I.CFContext
	Auth           I.Authorization
}

Pusher has a courier used to push applications to Cloud Foundry. It represents logging into a single foundation to perform operations.

func (Pusher) Execute

func (p Pusher) Execute() error

func (Pusher) Finally

func (p Pusher) Finally() error

CleanUp removes the temporary directory created by the Executor.

func (Pusher) Initially

func (p Pusher) Initially() error

Login will login to a Cloud Foundry instance.

func (Pusher) Success

func (p Pusher) Success() error

FinishPush will delete the original application if it existed. It will always rename the the newly pushed application to the appName.

func (Pusher) Undo

func (p Pusher) Undo() error

UndoPush is only called when a Push fails. If it is not the first deployment, UndoPush will delete the temporary application that was pushed. If is the first deployment, UndoPush will rename the failed push to have the appName.

func (Pusher) Verify

func (p Pusher) Verify() error

Jump to

Keyboard shortcuts

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