github.com/franc20/ayesa_sap@v7.0.0-beta.28.0.20200124003224-302d4d52fa6c+incompatible/actor/v7action/deployment.go (about) 1 package v7action 2 3 import ( 4 "code.cloudfoundry.org/cli/actor/actionerror" 5 "code.cloudfoundry.org/cli/api/cloudcontroller/ccv3" 6 "code.cloudfoundry.org/cli/api/cloudcontroller/ccv3/constant" 7 ) 8 9 type Deployment ccv3.Deployment 10 11 func (actor Actor) CreateDeployment(appGUID string, dropletGUID string) (string, Warnings, error) { 12 deploymentGUID, warnings, err := actor.CloudControllerClient.CreateApplicationDeployment(appGUID, dropletGUID) 13 14 return deploymentGUID, Warnings(warnings), err 15 } 16 17 func (actor Actor) GetLatestActiveDeploymentForApp(appGUID string) (Deployment, Warnings, error) { 18 ccDeployments, warnings, err := actor.CloudControllerClient.GetDeployments( 19 ccv3.Query{Key: ccv3.AppGUIDFilter, Values: []string{appGUID}}, 20 ccv3.Query{Key: ccv3.StatusValueFilter, Values: []string{string(constant.DeploymentStatusValueActive)}}, 21 ccv3.Query{Key: ccv3.OrderBy, Values: []string{ccv3.CreatedAtDescendingOrder}}, 22 ccv3.Query{Key: ccv3.PerPage, Values: []string{"1"}}, 23 ) 24 25 if err != nil { 26 return Deployment{}, Warnings(warnings), err 27 } 28 29 if len(ccDeployments) == 0 { 30 return Deployment{}, Warnings(warnings), actionerror.ActiveDeploymentNotFoundError{} 31 } 32 33 return Deployment(ccDeployments[0]), Warnings(warnings), nil 34 } 35 36 func (actor Actor) CancelDeployment(deploymentGUID string) (Warnings, error) { 37 warnings, err := actor.CloudControllerClient.CancelDeployment(deploymentGUID) 38 return Warnings(warnings), err 39 }