本文整理匯總了Golang中github.com/cloudfoundry/cli/cf/models.Application類的典型用法代碼示例。如果您正苦於以下問題:Golang Application類的具體用法?Golang Application怎麽用?Golang Application使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了Application類的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: BindRoute
func (routeActor routeActor) BindRoute(app models.Application, route models.Route) error {
if !app.HasRoute(route) {
routeActor.ui.Say(T(
"Binding {{.URL}} to {{.AppName}}...",
map[string]interface{}{
"URL": terminal.EntityNameColor(route.URL()),
"AppName": terminal.EntityNameColor(app.Name),
}),
)
err := routeActor.routeRepo.Bind(route.GUID, app.GUID)
switch err := err.(type) {
case nil:
routeActor.ui.Ok()
routeActor.ui.Say("")
return nil
case errors.HTTPError:
if err.ErrorCode() == errors.InvalidRelation {
return errors.New(T(
"The route {{.URL}} is already in use.\nTIP: Change the hostname with -n HOSTNAME or use --random-route to generate a new route and then push again.",
map[string]interface{}{
"URL": route.URL(),
}),
)
}
}
return err
}
return nil
}
示例2: makeAppWithRoute
func makeAppWithRoute(appName string) models.Application {
application := models.Application{}
application.Name = appName
application.Guid = "app-guid"
domain := models.DomainFields{}
domain.Name = "example.com"
route := models.RouteSummary{Host: "foo", Domain: domain}
secondRoute := models.RouteSummary{Host: appName, Domain: domain}
packgeUpdatedAt, _ := time.Parse("2006-01-02T15:04:05Z07:00", "2012-10-24T19:54:00Z")
application.State = "started"
application.InstanceCount = 2
application.RunningInstances = 2
application.Memory = 256
application.Stack = &models.Stack{
Name: "fake_stack",
Guid: "123-123-123",
}
application.Routes = []models.RouteSummary{route, secondRoute}
application.PackageUpdatedAt = &packgeUpdatedAt
return application
}
示例3: BindRoute
func (routeActor RouteActor) BindRoute(app models.Application, route models.Route) {
if !app.HasRoute(route) {
routeActor.ui.Say(T("Binding {{.URL}} to {{.AppName}}...", map[string]interface{}{"URL": terminal.EntityNameColor(route.URL()), "AppName": terminal.EntityNameColor(app.Name)}))
apiErr := routeActor.routeRepo.Bind(route.Guid, app.Guid)
switch apiErr := apiErr.(type) {
case nil:
routeActor.ui.Ok()
routeActor.ui.Say("")
return
case errors.HttpError:
if apiErr.ErrorCode() == errors.INVALID_RELATION {
routeActor.ui.Failed(T("The route {{.URL}} is already in use.\nTIP: Change the hostname with -n HOSTNAME or use --random-route to generate a new route and then push again.", map[string]interface{}{"URL": route.URL()}))
}
}
routeActor.ui.Failed(apiErr.Error())
}
}
示例4: ToModel
func (resource ApplicationFromSummary) ToModel() models.Application {
var app models.Application
app.ApplicationFields = resource.ToFields()
routes := []models.RouteSummary{}
for _, route := range resource.Routes {
routes = append(routes, route.ToModel())
}
app.Routes = routes
services := []models.ServicePlanSummary{}
for _, service := range resource.Services {
services = append(services, service.ToModel())
}
app.Routes = routes
app.Services = services
return app
}
示例5: makeAppWithoutOptions
func makeAppWithoutOptions(appName string) models.Application {
application := models.Application{}
application.Name = appName
application.Guid = "app-guid"
packgeUpdatedAt, _ := time.Parse("2006-01-02T15:04:05Z07:00", "2012-10-24T19:54:00Z")
application.State = "started"
application.InstanceCount = 2
application.RunningInstances = 2
application.Memory = 256
application.PackageUpdatedAt = &packgeUpdatedAt
return application
}
示例6: makeAppWithMultipleEnvVars
func makeAppWithMultipleEnvVars(appName string) models.Application {
application := models.Application{}
application.Name = appName
application.Guid = "app-guid"
packgeUpdatedAt, _ := time.Parse("2006-01-02T15:04:05Z07:00", "2012-10-24T19:54:00Z")
application.State = "started"
application.InstanceCount = 2
application.RunningInstances = 2
application.Memory = 256
application.PackageUpdatedAt = &packgeUpdatedAt
envMap := make(map[string]interface{})
envMap["foo"] = bool(true)
envMap["abc"] = "abc"
envMap["xyz"] = bool(false)
envMap["bar"] = float64(10)
application.EnvironmentVars = envMap
return application
}
示例7: makeAppWithRoute
func makeAppWithRoute(appName string) models.Application {
application := models.Application{}
application.Name = appName
application.Guid = "app-guid"
domain := models.DomainFields{}
domain.Name = "example.com"
route := models.RouteSummary{Host: "foo", Domain: domain}
secondRoute := models.RouteSummary{Host: appName, Domain: domain}
application.State = "started"
application.InstanceCount = 2
application.RunningInstances = 2
application.Memory = 256
application.Routes = []models.RouteSummary{route, secondRoute}
return application
}
示例8:
testconfig "github.com/cloudfoundry/cli/testhelpers/configuration"
"github.com/cloudfoundry/cli/testhelpers/maker"
testreq "github.com/cloudfoundry/cli/testhelpers/requirements"
testterm "github.com/cloudfoundry/cli/testhelpers/terminal"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
. "github.com/cloudfoundry/cli/testhelpers/matchers"
)
var _ = Describe("scale command", func() {
var (
requirementsFactory *testreq.FakeReqFactory
restarter *testcmd.FakeApplicationRestarter
appRepo *testApplication.FakeApplicationRepository
ui *testterm.FakeUI
config core_config.ReadWriter
cmd *Scale
app models.Application
)
BeforeEach(func() {
requirementsFactory = &testreq.FakeReqFactory{LoginSuccess: true, TargetedSpaceSuccess: true}
restarter = &testcmd.FakeApplicationRestarter{}
appRepo = &testApplication.FakeApplicationRepository{}
ui = new(testterm.FakeUI)
config = testconfig.NewRepositoryWithDefaults()
cmd = NewScale(ui, config, restarter, appRepo)
})
Describe("requirements", func() {
示例9:
},
},
{
Host: "app1",
Domain: models.DomainFields{
Name: "example.com",
},
}}
app2Routes := []models.RouteSummary{
{
Host: "app2",
Domain: models.DomainFields{Name: "cfapps.io"},
}}
app := models.Application{}
app.Name = "Application-1"
app.GUID = "Application-1-guid"
app.State = "started"
app.RunningInstances = 1
app.InstanceCount = 1
app.Memory = 512
app.DiskQuota = 1024
app.Routes = app1Routes
app.AppPorts = []int{8080, 9090}
app2 := models.Application{}
app2.Name = "Application-2"
app2.GUID = "Application-2-guid"
app2.State = "started"
app2.RunningInstances = 1
示例10:
testcmd "github.com/cloudfoundry/cli/testhelpers/commands"
testconfig "github.com/cloudfoundry/cli/testhelpers/configuration"
testterm "github.com/cloudfoundry/cli/testhelpers/terminal"
"github.com/cloudfoundry/cli/cf/commandregistry"
"github.com/cloudfoundry/cli/cf/commands/application"
. "github.com/cloudfoundry/cli/testhelpers/matchers"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
)
var _ = Describe("stop command", func() {
var (
ui *testterm.FakeUI
app models.Application
appRepo *applicationsfakes.FakeRepository
requirementsFactory *requirementsfakes.FakeFactory
config coreconfig.Repository
deps commandregistry.Dependency
)
updateCommandDependency := func(pluginCall bool) {
deps.UI = ui
deps.RepoLocator = deps.RepoLocator.SetApplicationRepository(appRepo)
deps.Config = config
commandregistry.Commands.SetCommand(commandregistry.Commands.FindCommand("stop").SetDependency(deps, pluginCall))
}
BeforeEach(func() {
ui = &testterm.FakeUI{}
config = testconfig.NewRepositoryWithDefaults()
appRepo = new(applicationsfakes.FakeRepository)
示例11:
"github.com/cloudfoundry/cli/cf/errors"
"github.com/cloudfoundry/cli/cf/models"
testcmd "github.com/cloudfoundry/cli/testhelpers/commands"
testconfig "github.com/cloudfoundry/cli/testhelpers/configuration"
. "github.com/cloudfoundry/cli/testhelpers/matchers"
testreq "github.com/cloudfoundry/cli/testhelpers/requirements"
testterm "github.com/cloudfoundry/cli/testhelpers/terminal"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
)
var _ = Describe("restage command", func() {
var (
ui *testterm.FakeUI
app models.Application
appRepo *testApplication.FakeApplicationRepository
configRepo core_config.ReadWriter
requirementsFactory *testreq.FakeReqFactory
stagingWatcher *fakeStagingWatcher
)
BeforeEach(func() {
ui = &testterm.FakeUI{}
app = models.Application{}
app.Name = "my-app"
app.PackageState = "STAGED"
appRepo = &testApplication.FakeApplicationRepository{}
appRepo.ReadReturns.App = app
configRepo = testconfig.NewRepositoryWithDefaults()
requirementsFactory = &testreq.FakeReqFactory{LoginSuccess: true, TargetedSpaceSuccess: true}
示例12:
testconfig "github.com/cloudfoundry/cli/testhelpers/configuration"
testreq "github.com/cloudfoundry/cli/testhelpers/requirements"
testterm "github.com/cloudfoundry/cli/testhelpers/terminal"
testtime "github.com/cloudfoundry/cli/testhelpers/time"
. "github.com/cloudfoundry/cli/testhelpers/matchers"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
)
var _ = Describe("app Command", func() {
var (
ui *testterm.FakeUI
configRepo core_config.Repository
appSummaryRepo *testapi.FakeAppSummaryRepo
appInstancesRepo *testAppInstanaces.FakeAppInstancesRepository
appLogsNoaaRepo *testapi.FakeLogsNoaaRepository
requirementsFactory *testreq.FakeReqFactory
app models.Application
deps command_registry.Dependency
)
updateCommandDependency := func(pluginCall bool) {
deps.Ui = ui
deps.RepoLocator = deps.RepoLocator.SetLogsNoaaRepository(appLogsNoaaRepo)
deps.Config = configRepo
deps.RepoLocator = deps.RepoLocator.SetAppSummaryRepository(appSummaryRepo)
deps.RepoLocator = deps.RepoLocator.SetAppInstancesRepository(appInstancesRepo)
command_registry.Commands.SetCommand(command_registry.Commands.FindCommand("app").SetDependency(deps, pluginCall))
}
BeforeEach(func() {
示例13:
It("shows error and prints command usage", func() {
Expect(runCommand("app_name", "-L", "[9999:localhost...")).To(BeFalse())
Expect(ui.Outputs()).To(ContainSubstrings(
[]string{"Incorrect Usage"},
[]string{"USAGE:"},
))
})
})
})
})
Describe("ssh", func() {
var (
currentApp models.Application
)
BeforeEach(func() {
requirementsFactory.NewLoginRequirementReturns(requirements.Passing{})
requirementsFactory.NewTargetedSpaceRequirementReturns(requirements.Passing{})
currentApp = models.Application{}
currentApp.Name = "my-app"
currentApp.State = "started"
currentApp.GUID = "my-app-guid"
currentApp.EnableSSH = true
currentApp.Diego = true
applicationReq := new(requirementsfakes.FakeApplicationRequirement)
applicationReq.GetApplicationReturns(currentApp)
requirementsFactory.NewApplicationRequirementReturns(applicationReq)
示例14:
testcmd "github.com/cloudfoundry/cli/testhelpers/commands"
testconfig "github.com/cloudfoundry/cli/testhelpers/configuration"
testreq "github.com/cloudfoundry/cli/testhelpers/requirements"
testterm "github.com/cloudfoundry/cli/testhelpers/terminal"
. "github.com/cloudfoundry/cli/cf/commands/application"
. "github.com/cloudfoundry/cli/testhelpers/matchers"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
)
var _ = Describe("set-env command", func() {
var (
ui *testterm.FakeUI
configRepo configuration.ReadWriter
app models.Application
appRepo *testapi.FakeApplicationRepository
requirementsFactory *testreq.FakeReqFactory
)
BeforeEach(func() {
ui = &testterm.FakeUI{}
app = models.Application{}
app.Name = "my-app"
app.Guid = "my-app-guid"
appRepo = &testapi.FakeApplicationRepository{}
requirementsFactory = &testreq.FakeReqFactory{}
configRepo = testconfig.NewRepositoryWithDefaults()
})
runCommand := func(args ...string) {
示例15:
})
It("fails requirements when not logged in", func() {
Expect(runCommand("my-app", "none")).To(BeFalse())
})
It("fails if a space is not targeted", func() {
requirementsFactory.LoginSuccess = true
requirementsFactory.TargetedSpaceSuccess = false
Expect(runCommand("my-app", "none")).To(BeFalse())
})
})
Describe("enable-ssh", func() {
var (
app models.Application
)
BeforeEach(func() {
requirementsFactory.LoginSuccess = true
requirementsFactory.TargetedSpaceSuccess = true
app = models.Application{}
app.Name = "my-app"
app.GUID = "my-app-guid"
app.EnableSSH = false
requirementsFactory.Application = app
})
Context("when enable_ssh is already set to the true", func() {